【发布时间】:2019-10-04 14:36:49
【问题描述】:
我有一个UIBarButtonItem,当它被解除时,我想从模态视图控制器的值进行更新。目前我只能通过获取我不想要的当前可见视图控制器来做到这一点。有没有办法在关闭模态视图后更新父视图控制器。
class HomeViewController: UIViewController {
@IBOutlet weak var accountButton: UIBarButtonItem!
override func viewWillAppear(_ pAnimated: Bool) {
super.viewWillAppear(pAnimated)
self.accountButton.title = User.current!.firstName
}
@IBAction func accountButton(_ pSender: UIBarButtonItem) {
let editUserAccountVC = UIStoryboard.fs_instantiateFromStoryboard("Main", identifier: "EditUserAccountViewController") as! EditUserAccountViewController
let navVC = UINavigationController(rootViewController: editUserAccountVC)
navVC.view.tintColor = self.view.tintColor
self.present(navVC, animated: true)
}
}
}
这是编辑后关闭的模态
class EditUserAccountViewController: UIViewController {
var firstName: String?
@IBAction func saveButton(_ sender: Any) {
self.dismiss(animated: true) {
if let thePresentedViewController = self.presentingViewController as? HomeViewController {
thePresentedViewController.accountButton.title = self.firstName
}
}
}
}
【问题讨论】:
-
是使用协议(委托)
标签: ios swift uiviewcontroller uinavigationcontroller