一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

您好,歡迎來電子發(fā)燒友網(wǎng)! ,新用戶?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>源碼下載>通訊/手機(jī)編程>

iOS系統(tǒng)中一些常見問題

大?。?/span>0.2 MB 人氣: 2017-09-25 需要積分:1

  對(duì)于通知,大家想必都不陌生,它是一個(gè)單例,允許當(dāng)事件發(fā)生時(shí)通知一些對(duì)象,讓我們?cè)诘统潭?a href='http://www.www27dydycom.cn/tags/耦合/' target='_blank' class='arckwlink_none'>耦合的情況下,來達(dá)到通信的目的。

  通知的優(yōu)勢(shì):

  1.不需要編寫太多代碼,實(shí)現(xiàn)比較簡(jiǎn)單

  2.對(duì)于一個(gè)發(fā)出的通知,可以多個(gè)對(duì)象作出反應(yīng),即是說通知是一對(duì)多的形式

  通知的缺點(diǎn):

  1.在編譯期不會(huì)檢查通知是否能夠被觀察者正確處理

  2.在釋放注冊(cè)的對(duì)象時(shí),需要在通知中心取消注冊(cè)

  3.在調(diào)試應(yīng)用時(shí),難以跟蹤程序

  4.發(fā)出通知后,不能夠從觀察者那里獲取任何反饋信息

  通知的基本實(shí)現(xiàn):

  - (void)viewDidLoad {

 ?。踫uper viewDidLoad];

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

  NSLog(@“注冊(cè)通知 - %@”,[NSThread currentThread]);

  }

  - (void)touchesBegan:(NSSet《UITouch *》 *)touches withEvent:(UIEvent *)event {

  [[NSNotificationCenter defaultCenter] postNotificationName:@“test” object:nil];

  NSLog(@“發(fā)送通知完成 - %@”,[NSThread currentThread]);

  }

  - (void)test {

  NSLog(@“接收到通知 - %@”,[NSThread currentThread]);

  sleep(3);

  }

  打印結(jié)果:

  2017-06-13 16:53:01.040 通知的基本使用[24531:3283934] 注冊(cè)通知 - 《NSThread: 0x600000079c80》{number = 1, name = main}

  2017-06-13 16:53:10.334 通知的基本使用[24531:3283934] 接收到通知 - 《NSThread: 0x600000079c80》{number = 1, name = main}

  2017-06-13 16:53:13.335 通知的基本使用[24531:3283934] 發(fā)送通知完成 - 《NSThread: 0x600000079c80》{number = 1, name = main}

  注意打印結(jié)果:在test方法執(zhí)行完畢之后,才會(huì)打印發(fā)送完成的log。

非常好我支持^.^

(0) 0%

不好我反對(duì)

(0) 0%

      發(fā)表評(píng)論

      用戶評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?