假设我有3 UIViewControllers
A,B,C。
现在让我说我从A调用B或C.不用segues,但是在代码中实例化它们并将它们推送到navigationController
。
完成B或C后,他们会调用popViewControllerAnimated:
,然后返回A.
此时我想访问B或C的属性,具体取决于它们中哪一个实际上是我使用的最后一个属性。
如果最后一个UIViewController
属于B或C类型,是否有任何方法或属性可以提供给我信息?
我知道我可以为B和C定义一个协议,并将A设置为delegate
,但我正在寻找其他东西......
答案 0 :(得分:0)
由于每次都可以设置不方便,委托模式是解决此问题的正确方法。也就是说,快速到达那里的最快,最黑客的方法可能只是保持对你在A的实例变量或属性中推送的最后一个viewController的引用,然后在-viewWillAppear:
中使用它。但是,一旦事情开始变得复杂,确保这个属性总是正确的,最终可能比设置一个简单的委托更多的工作。