【发布时间】:2014-10-12 15:25:52
【问题描述】:
我正在用 Swift 开发一个应用程序,大体上,它可以告诉人们比特币在各种货币中的价格。要选择货币,用户从带有 UITableView 的视图控制器中的列表中进行选择。这是 currencyViewController,它是从我的主屏幕 viewController 中呈现的。
我想要发生的是,当用户关闭 currencyViewController 时,它会将一个字符串传递给主视图控制器中的 UIButton。
这是应该传递数据的 prepareForSegue 函数:
override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject!) {
if (segue.identifier == "presentCurrency") {
currencySelector.setTitle("\currencySelected", forState: UIControlState.Normal)
}
}
CurrencySelector 是主 viewController 中的 UIButton,currencySelected 是第二个视图控制器 currencyViewController 中的变量。
它给出了错误“Invalid Escape Sequence In Literal”
所以,我将其缩小到以下两个问题之一:
无法从 currencyViewController “看到”来自 viewController 的变量。如果是这样,如何从 CurrencyViewController 修改 CurrencySelector 的文本?
由于某种原因,当用户退出推送的 CurrencyViewControler 时,不会调用 prepareForSegue。
这里发生了什么?谢谢,并道歉 - 我只是一个快速的新手。
【问题讨论】:
-
如果你想在返回第一个控制器时调用 prepareForSegue,你需要返回一个 unwind segue。
标签: ios swift pushviewcontroller