[问题] pushnotification 的问题

楼主: valda (valda)   2014-11-03 16:26:17
如果我initial view controller 为A
A会push出B or C
B也会push出D
C也会push出E
当我接收到RemoteNotification时
不论当下任何的view controller
我都要push出一个特定的页面
目前我的做法是
在AppDelegate中
- (void)application:(UIApplication *)application
didReceiveRemoteNotification:(NSDictionary *)userInfo {
[PFPush handlePush:userInfo];
NSLog(@"%@",userInfo);
[[NSNotificationCenter defaultCenter] postNotificationName:@"test"
object:nil userInfo:nil];
}
然后每个viewcontroller加上
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(handleCurrentViewController:) name:@"test" object:nil];
}
- (void)handleCurrentViewController:(NSNotification *)notification {
PushNotificationViewController* pvc = [self.storyboard
instantiateViewControllerWithIdentifier:@"PushNotification"];
[self presentViewController:pvc animated:YES completion:nil];
}
但是如果我现在在B页面
因为B是由Apush出来的
所以我A跟B都会接收到NSNotificationCenter的讯息
都会触发
请问如何修改会比较好
作者: darktt (小朱)   2014-11-03 16:29:00
在viewWillAppear的时候注册notification,viewWillDisappear的时候移除notificaiton。
作者: howdiun (Howdiun)   2014-11-04 09:09:00
我是用一个独立的view去显示,忽略controller

Links booklink

Contact Us: admin [ a t ] ucptt.com