Posts

Post not yet marked as solved
1 Replies
1.1k Views
I used delegation for passing data to ViewController B to A in dynamic framework . B is my dynamic framework ViewController . A is my app ViewController . I am always set delegate as self in my A class Without dynamic framework it works perfectlyClass B code : Inside dynamic framework (Using .xib)import UIKitpublic protocol MediaDataDelegate: class{ func mediaDidFinish(controller: LoginViewController,transactionId:String,returnURL: String)}public class LoginViewController: UIViewController {public var message = ""public var delegate: MediaDataDelegate?public init() { super.init(nibName: "LoginViewController", bundle: Bundle(for: LoginViewController.self)) print("message 1234 :\(message)")}required public init?(coder aDecoder: NSCoder) { fatalError("init(coder:) has not been implemented")}override open func viewDidLoad() { super.viewDidLoad() print("message 1234 :\(message)")}public class func logToConsole(_ msg: String) { print(msg);}@IBAction func backToMainBtnTapped(_ sender: UIButton) { self.delegate?.mediaDidFinish(controller: self, transactionId: "WERTYQWRCT", returnURL: "www.media.com")}}Class A Code:Inside Other App (Using Storyboard)Click on conduct IPVButton navigate to dynamic framework view controller I also pass some value to message string but in dynamic framework class getting empty string.import UIKitimport NBViewclass ViewController: UIViewController ,MediaDataDelegate{var loginVC = LoginViewController()override func viewDidLoad() { super.viewDidLoad() // Do any additional setup after loading the view. LoginViewController.logToConsole("hello media")}@IBAction func conductIPVBtnTapped(_ sender: Any) { loginVC.delegate = self present(loginVC, animated: true, completion: nil)}func mediaDidFinish(controller: LoginViewController, transactionId: String, returnURL: String) { print("Trans Id\(transactionId)") print("return URl \(returnURL)")}}
Posted
by vinubhor.
Last updated
.