我有两个ViewControllers。我们称他们为aVC和bVC。
在aVC中,我显示了一个alertView。如果按下该alertView上的按钮,则会对bVC执行segue。
在bVC中,视图出现时会发生某些事情,但只有在aVC中从该按钮触发时才会发生。
我试过通知。
在aVC中按下alertView按钮时,会发布通知。在bVC的viewDidLoad中,我为该通知执行了addObserver,但这不起作用。
我猜是因为在通知发布后添加了观察者?这只是我的猜测。
我试了几个小时才能让它工作,但通知似乎没有完成这项工作。
那么如何调用bVC中的方法,当aVC中的alertview按钮触发视图时执行该方法?
答案 0 :(得分:0)
您可以在bVC中拥有一个布尔属性,用于定义是否从aVC中的按钮加载了bVC。在prepareForSegue:sender:
中,在执行segue之前将该属性设置为true(您可以使用sender
确定调用是否来自您的按钮),在bVC中,在外观上检查所述属性。< / p>
有关如何设置此类属性的示例位于https://stackoverflow.com/a/9176361/886407。
答案 1 :(得分:0)
你可以在bVC的viewDidLoad中调用你的方法。
“在aVC中按下alertView按钮时,会发布通知。在bVC的viewDidLoad中,我为该通知做了addObserver,但这不起作用“ 就像你猜的那样,观察者是在通知发布后添加的。