我一直試圖讓NSNotification
工作。對於測試,我想要一個使用storyBoards加載新viewController的按鈕。當你點擊按鈕時,它應該觸發appObserver在第二個ViewController(我已經命名爲Page2)中的通知。在Page2中,NSNotificationCenter
應該啓動一個方法(myMethod :)並打印出一個簡單的NSLog
。 不幸的是,它不起作用,因爲myMethod沒有被調用。我究竟做錯了什麼 ???NS通知不起作用
#import "ViewController.h"
@interface ViewController()
@end
@implementation ViewController
- (IBAction)goToPage2Button:(id)sender {
[[NSNotificationCenter defaultCenter] postNotificationName:@"test" object:nil];
}
#import "Page2.h"
@interface Page2()
@end
@implementation Page2
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
[[NSNotificationCenter defaultCenter]addObserver:self selector:@selector(myMethod:) name:@"test" object:nil];
}
return self;
}
-(void)myMethod:(NSNotification *)notification{
if ([[notification name] isEqualToString:@"test"])
NSLog (@"Successfully received the test notification!");
}
@Abizem - 感謝您讓我走向正確的方向。我剛剛學會了如何使用segues傳遞數據,並且它工作得非常出色。 – pete