Posts

Post marked as solved
6 Replies
1.5k Views
class  a {     b().download ({ data in     }) } class  b{     func download (downloadedData: @escaping (_ data: Data? ) -> Void )  {         c().download()     } } class c {     func download () -> Data {         let semaphore = DispatchSemaphore(value: 0)           NetworkManager().downloadRequest: { (result: Result<Data, Error>) in                                             switch result {                                             case .success(let success)                                                 ......                                              case .failure(let error): .....                                             }                                             semaphore.signal()                                    }                         )         semaphore.wait()         return data     } } Class a initiates the download and class c interacts with network manager to download the data. Class c issues semaphore wait as soon as it sends request to download the data and issues signal when download completes. Is there a way to issue signal from class a when download is in progress. Basically class a should be able to skip wait by issuing signal command
Posted Last updated
.
Post not yet marked as solved
0 Replies
420 Views
public protocol UploadDelegate: AnyObject {} class NetworkManager: UploadDelegate {} class A { B().abc(uploadDelegate:NetworkManager() ) } class B { func abc (uploadDelegate: UploadDelegate) { C().efg(uploadDelegate:uploadDelegate ) } } class C { func efg (uploadDelegate: UploadDelegate) { D().hij(uploadDelegate:uploadDelegate ) } } class D { func hij (uploadDelegate: UploadDelegate) { uploadDelegate.func() } } Can we pass the protocol/delegate as a func parameter? If yes, I believe its a weak property.
Posted Last updated
.
Post not yet marked as solved
0 Replies
495 Views
I have a class written in Swift that will present the view developed using SwiftUI. SwiftUI is dependent on the enum used in Swift class to render the UI. Is there a way to bind that enum in Swift UI so that SwiftUI will update automatically when ever there is a change to the enum in Swift class
Posted Last updated
.
Post not yet marked as solved
1 Replies
648 Views
I have the business logic in Swift class and built UI using SwiftUI. Below the high level code that shows how SwiftUI and its subview receives the data from Swift. Please let me know if its correct approach class SwiftClass{     var score = "1"     func A () {}          func B () {         // score will get updated frequently         let scoreModal =  ScoreUIViewModel()         let scoreUI: ScoreUI = ScoreUI(showModal: .constant(true), scoreUIViewModel: scoreModal)         DispatchQueue.main.async {             scoreUI.displayScoreUI()         }        // score getting updated from another class         scoreModal.score = score // score getting updated from another class         score  = "2"         scoreModal.score = "2" // score getting updated from another class         score  = "3"         scoreModal.score = "3" // score getting updated from another class        score  = "4"         scoreModal.score = "4"      .......              } } import SwiftUI class ScoreUIViewModel: Observable {     @Published score: String } struct ScoreUI: View {     @State var scoreUIViewModel: ScoreUIViewModel     func displayScoreUI() {         let hostController = UIHostingController(rootView: ScoreUI())         hostController = .overCurrentContext         topViewController()!.present(hostController, animated: true, completion: nil)     }.environmentObject(scoreUIViewModel)      } struct ScoreText: View {     @EnvironmentObject var scoreUIViewModel: ScoreUIViewModel     Text(score).foregroundColor(.green) }
Posted Last updated
.
Post not yet marked as solved
2 Replies
1.1k Views
I developed a framework in Swift and designed a screen/view via SwiftUI. SwiftUI view will be presented on top of the Window by the class written in Swift. Now I need to pass the data from the Swift class to SwiftUI. Could one any help to know the best practice to pass the data to show the progress from Swift class to Swift UI. func A () {} func B () { // score will get updated frequently score = .... ScorePresenter().presentScoreUI() } } import SwiftUI struct ScorePresenter: { func presentScoreUI() { let hostController = UIHostingController(rootView: ScoreUI()) hostController = .overCurrentContext topViewController()!.present(hostController, animated: true, completion: nil) } } struct ScoreUI: View { var score = 1 Text(score).foregroundColor(.green) } When ever score changes in Score class ScoreUI must be updated accordingly.
Posted Last updated
.
Post not yet marked as solved
2 Replies
852 Views
I wanted to present an View with modal animation full screen on top the the existing view/viewcontroller programmatically(without button tap or tap gesture). Is it possible to present a view without button tap/tap gesture?
Posted Last updated
.
Post not yet marked as solved
0 Replies
337 Views
I have a framework that will be consumed by other developers to develop the app. I designed a view using SwiftUI in that framework and wanted to present that view with model animation programatically from the framework. There are many sample that shows how to present a view with modal animation associated with button tap. Can anyone let me know how to present a view modal programmatically?
Posted Last updated
.
Post not yet marked as solved
0 Replies
849 Views
DispatchQueue.main.asyncAfter(deadline: .now() + 10) { //code } code within asyncAfter will get executed after 10 seconds. Is there a way to cancel execution before 10 seconds
Posted Last updated
.
Post not yet marked as solved
1 Replies
466 Views
I know that using using JSONDecoder we can convert the downloaded JSON data into class/struct object. Is there a way to do the same for raw data(NSData)/octect. Since downloaded is not a json, I am getting error. I have class like this public struct FileData: Codable{ public var data: Data? public init (data: Data? = nil){ self.data = data } } Is there a way to assign the downloaded data to FileData().data via decoding
Posted Last updated
.
Post not yet marked as solved
2 Replies
1.7k Views
Hi,I have an Xcode project with multiple targets. I added a few custom frameworks to all the targets which increase the IPA file size. Actually, a few targets don't need to have these custom framework.I know we can exclude these frameworks by removing them from "Build Phases->Link Binaries With Libraries" for the particular target, but I am exploring to see whether these can be achieved by having a script so that we don't have to remove/add them manually whenever required.I have a custom plist file for each target which tells whether these frameworks are needed. Is there any command available to remove/strip the framework from the target while building the app so that I can write a script by referring the plist value.
Posted Last updated
.
Post not yet marked as solved
1 Replies
913 Views
I have a framework written in Objective-C. My framework is in Swift and imported the 3rd party Objective-C framework in my project. @interface AAAA: NSObject(void)setHandler:(idHandler)handler @end I wanted to implement the Handler protocol in my Swift project. I did like this Class ZXY: NSObject, Handler{ init(){ super.init AAAA.setHandler(self) } // Implemented Handler Protocol optional methods func aaaa(){ } } Handler protocol optional method aaaa never called. Am I missing anything
Posted Last updated
.
Post not yet marked as solved
0 Replies
404 Views
I am getting an error message (mixed language) while adding the Swift package dependency. Source code mostly contains Swift language and a little bit of Objective-C. Can't we mix Swift and Objective-C language? If so, what is the workaround
Posted Last updated
.
Post not yet marked as solved
0 Replies
339 Views
I have an Xcode project that generates xyz.framework and that framework is used by other teams for their app. Updating the framework is a manual process. So I am planning to covert my xyz.framwork source to swift package manager. I couldn't find any such articles. Please let me know if there is any resource around this topic.
Posted Last updated
.