你好,歡迎來到IOS教程網

 Ios教程網 >> IOS編程開發 >> IOS開發綜合 >> iphone消息通信機制NSNotificationCenter

iphone消息通信機制NSNotificationCenter

編輯:IOS開發綜合

 

NSNotificationCenter是專門供程序中不同類間的消息通信而設置的,使用起來極為方便,

長話短說。

設置通知,就是說要在什麼地方(哪個類)接受通知,一般在初始化中做。

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(test:) name:@" test" object:nil];

我僅對以上參數做以說明:

addObserver 這個是觀察者,就是說 在什麼地方接收通知;

 selector 這個是收到通知後,調用何種方法;

 name: 這個是通知的名字,也是通知的唯一標示,編譯器就通過這個找到通知的。

發送通知,就是說此時要調用觀察者處的方法。

[[NSNotificationCenter defaultCenter] postNotificationName:@"test" object:searchFriendArray];

我僅對以上參數做以說明:

postNotificationName:通知的名字,也是通知的唯一標示,編譯器就通過這個找到通知的。

object:傳遞的參數

發送通知時,默認調用test方法。

- (void) test:(NSNotification*) notification

{

searchFriendArrary = [notification object];//通過這個獲取到傳遞的對象

}

=========================================================

例::

=========================================================

@implementation chuanzhenAppDelegate

-(void) onSocket:(AsyncSocket *)sock didReadData:(NSData *)data withTag:(long)tag

{

    //根據接收到的不同,來發送不同的消息。此處發送Login

    [[NSNotificationCenter defaultCenter]postNotificationName:@"Login" object:self];

}

另一BeforeRootViewController.m裡。

- (void)viewDidLoad {

    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(DidLogin) name:@"Login" object:nil];

}

-(IBAction) LoginClick

{

..............

}

  摘自軟若石

  1. 上一頁:
  2. 下一頁:
蘋果刷機越獄教程| IOS教程問題解答| IOS技巧綜合| IOS7技巧| IOS8教程
Copyright © Ios教程網 All Rights Reserved