在swift中传递和调用视图之间的变量和函数

时间:2014-08-26 16:25:57

标签: ios xcode uiviewcontroller swift

我一直想深入研究iOS和Mac编程很长一段时间,当我听到swift时,我认为这将是一个很棒的时间。

目前我一直在访问其他视图中定义的变量。 我正在使用一个公共结构,其中包含一些我可以从任何地方访问的静态变量,但是(除了我的直觉告诉我,我做错了)我发现这根本不是一个可行的解决方案。 我有一个带嵌入式ListView的ViewController。在列表中删除单元格时,我必须以某种方式编辑TopViews标签。

如何从嵌入视图中调用textLabel.text或重载函数?

要创建我跟随this tutorial并在其基础上建立的列表。

1 个答案:

答案 0 :(得分:3)

您可以使用NSNotification。在ViewController的viewDidLoad函数中,您可以添加如下的观察者:

NSNotificationCenter.defaultCenter().addObserver(self, selector: "doSomethingWhenCellDeleted:", name:"cellDeleted", object: nil)

然后在嵌入视图中删除单元格时,您调用:

NSNotificationCenter.defaultCenter().postNotificationName("cellDeleted", object: nil)

然后那个方法doSomethingWhenCellDeleted将在ViewController中调用,它应该是这样的:

func doSomethingWhenCellDeleted(notification: NSNotification){
//Do whatever
}