iOS系統(tǒng)中一些常見問題
對于通知,大家想必都不陌生,它是一個單例,允許當(dāng)事件發(fā)生時通知一些對象,讓我們在低程度耦合的情況下,來達到通信的目的。
通知的優(yōu)勢:
1.不需要編寫太多代碼,實現(xiàn)比較簡單
2.對于一個發(fā)出的通知,可以多個對象作出反應(yīng),即是說通知是一對多的形式
通知的缺點:
1.在編譯期不會檢查通知是否能夠被觀察者正確處理
2.在釋放注冊的對象時,需要在通知中心取消注冊
3.在調(diào)試應(yīng)用時,難以跟蹤程序
4.發(fā)出通知后,不能夠從觀察者那里獲取任何反饋信息
通知的基本實現(xiàn):
- (void)viewDidLoad {
?。踫uper viewDidLoad];
?。郏跱SNotificationCenter defaultCenter] addObserver:self selector:@selector(test) name:@“test” object:nil];
NSLog(@“注冊通知 - %@”,[NSThread currentThread]);
}
- (void)touchesBegan:(NSSet《UITouch *》 *)touches withEvent:(UIEvent *)event {
?。郏跱SNotificationCenter 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] 注冊通知 - 《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í)行完畢之后,才會打印發(fā)送完成的log。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%
下載地址
iOS系統(tǒng)中一些常見問題下載
相關(guān)電子資料下載
- iOS17.1可能明天發(fā)布,iOS17.1主要修復(fù)哪些問題? 377
- 華為全新鴻蒙蓄勢待發(fā) 僅支持鴻蒙內(nèi)核和鴻蒙系統(tǒng)應(yīng)用 719
- 蘋果手機系統(tǒng)iOS 17遭用戶質(zhì)疑 731
- iPhone12輻射超標(biāo)?蘋果推送iOS 17.1解決此事 750
- 傳華為囤積零部件 目標(biāo)明年智能手機出貨7000萬部;消息稱 MiOS 僅限國內(nèi),小米 28208
- 蘋果推送iOS17.0.3,解決iPhone15Pro系列存在機身過熱 216
- Testin云測兼容和真機服務(wù)平臺中上線iPhone 15系列手機 208
- 利爾達推出搭載HooRiiOS的Matter模組 145
- 運放參數(shù)解析:輸入偏置電流(Ibias)和失調(diào)電流(Ios) 128
- 昆侖太科發(fā)布支持國產(chǎn)飛騰騰銳D2000芯片的開源BIOS固件版本 448