我可以使用选择器吗getUpdate:
在多个视图控制器中?我正在注册我的LevelViewController
作为双方的观察者GameViewController
and WinViewController
。后 2 个视图控制器都有一个后退按钮(按下该按钮后,您将返回到LevelVC
),通知的目的是告诉LevelVC
是否更新集合视图单元格(通过viewWillAppear:
方法)当按下后退按钮时。
In viewWillAppear:
,我不想调用两个单独的方法(一个来自GameVC
和一个来自WinVC
)为了获得我的更新,我只使用了一种可以在任一情况下使用的流畅方法。
这就是我的意图(在LevelVC
):
- (void)viewDidLoad
{
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(getUpdate:)
name:@"getUpdateForCell"
object:nil];
}
并纳入
- (void)getUpdate:(NSNotification *)notification {
NSDictionary *data = [notification userInfo];
// pop
}
两次...一次GameVC
,另一个在WinVC
.
这可能吗?或者我应该只发出两个单独的通知?
您可以创建自己的NSDictionary
并作为值传递userInfo
以确定哪个UIViewController
你来自并使用适当的方式处理这种情况if
陈述。
或者
当后退按钮出现时,您可以使用委托来执行事件,并对前一个按钮执行适当的操作UIViewController
。我个人更喜欢这种方法。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)