关于将状态从一个视图控制器更改为另一个?

时间:2014-05-25 01:49:39

标签: ios uiviewcontroller

说,我有两个视图控制器A和B

在B中,我想改变A的状态

使用iOS,我有两种方法可以做到这一点

方法一:

中,调用A.change()

Methed2:

使用NotificationCenter

首选哪种方式?

1 个答案:

答案 0 :(得分:0)

这两种方法都有自己的目的。根据您的具体情况,您将决定实施哪种方法。


方法1:

它的工作方式类似于一对一的关系。只访问一个对象。例如,更改属性或调用对象的方法。

方法2:

它的工作方式类似于1对多关系。它播放该活动,并且将通知正在收听该活动的所有人。例如UIKeyboardDidHideNotificationUIKeyboardDidShowNotification,任意数量的对象都可以开始侦听这些通知,当这些事件发生时,将同时通知所有这些对象。


在你的情况下,我建议你做一个delegate。分配B.delegate = A。致电

[B.delegate performSelector:@selector(change)];