【发布时间】:2018-07-16 17:56:37
【问题描述】:
我需要呈现一个模态 VC,它在呈现的 VC 中设置一个属性,然后我需要在呈现的 VC 中使用该值做一些事情。我必须能够将指向不同属性的指针传递给这个函数,以便它可以重用。我有下面的代码(KeyPickerTableViewController 是模态 VC)。
它应该可以工作,除非不是,因为present(picker... 之后的行会在选择器出现后立即执行。
如何让我的演示 VC “等待”直到模态 VC 被解除?
@objc func fromKeyTapped(_ button: UIBarButtonItem) {
print("from tapped")
setKey(for: &sourceKey, presentingFrom: button)
}
@objc func toKeyTapped(_ button: UIBarButtonItem) {
print("from tapped")
setKey(for: &destKey, presentingFrom: button)
}
fileprivate func setKey(for key: inout Key!, presentingFrom buttonItem: UIBarButtonItem) {
let picker = KeyPickerTableViewController()
picker.delegate = self
picker.modalPresentationStyle = .popover
picker.popoverPresentationController?.barButtonItem = buttonItem
present(picker, animated: true, completion: nil)
if let delKey = delegatedKey {
key = delKey
}
}
【问题讨论】:
-
你在哪里设置这个值 delegatedKey ,如果你设置 picker.delegate = self 它应该你的VC里面有一个更新委托函数??
标签: swift