为了实现展开segue ,我们需要在故事板中进行控制拖动 在目标视图控制器中创建私有方法。
我不明白:如果方法是私有的,它是如何工作的?因为在我的视图控制器的实现文件中这不是调用。
答案 0 :(得分:0)
执行时,您的应用程序首先解析.storyboard文件,了解实例化所需的类以及其他重要信息,例如segue连接。然后,它创建类实例(并在以后管理它们)。然后,当请求时(例如,在按下按钮之后),它尝试在控制器实例中找到方法unwindToList:
。如果有,它将执行。如果没有,将抛出异常。
但是,该方法并未完全隐藏。基本上,Objective-C中没有私有方法;至少与其他语言不同。运行时可以访问每个方法。如果您对Objective-C如何完全感兴趣,请查看这些页面,例如:
How does objective-c handle method resolution at run-time?
http://cocoasamurai.blogspot.ru/2010/01/understanding-objective-c-runtime.html