//
// person.h
// lesson_18_02_kvo(鍵值觀察者)
//// created by lanou3g on 15/9/8.
//#import
@inte***ce person : nsobject
@property (nonatomic,retain)nsstring * name;
@end
//// person.m
// lesson_18_02_kvo(鍵值觀察者)
//// created by lanou3g on 15/9/8.
//#import "person.h"
@implementation person
- (void)dealloc
@end
//// viewcontroller.h
// lesson_18_02_kvo(鍵值觀察者)
//// created by lanou3g on 15/9/8.
//#import
@inte***ce viewcontroller : uiviewcontroller
@end
//// viewcontroller.m
// lesson_18_02_kvo(鍵值觀察者)
//// created by lanou3g on 15/9/8.
//#import "viewcontroller.h"
#import "person.h"
@inte***ce viewcontroller ()
@property (retain, nonatomic) iboutlet uitextfield *texefield;
- (ibaction)didclickbutton:(uibutton *)sender;
@property (nonatomic,retain)person * person;
@end
@implementation viewcontroller
- (void)viewdidload
- (void)didreceivememorywarning
- (void)dealloc
- (ibaction)didclickbutton:(uibutton *)sender
// 3.只要是被觀察者的屬性值發生變化,就會執行下面的這個方法(這個方法會自動呼叫,不需要手動呼叫)
- (void)observevalueforkeypath:(nsstring *)keypath ofobject:(id)object change:(nsdictionary *)change context:(void *)context
// 5.移除觀察者(不寫在這裡,寫在這裡就不會有實現效果,應該寫在dealloc裡,即生命週期和person一致)
// [_person removeobserver:self forkeypath:keypath context:context];
}@end
使用觀察者步驟和注意事項:
1:新增觀察者
2.實現觀察者方法
3.移除觀察者(也是注意事項:使用完成後記得移除)
wllvm使用及注意事項
export llvm compiler llvm gcc export llvm gcc prefix export llvm compiler path path to llvm 2.9 release asserts bin 這裡不能填llvm gcc的路徑,不然在extract bc的時候會...
WFP TreeView使用及注意事項
最近接手wpf的專案,從0開始,做些積累 hierarchicaldatatemplate hierarchicaldatatemplate顧名思義,分層資料模板,就是用來定義分層資料樣式的模板,一般多用於menuitem和treeviewitem datatype指定模板用於哪種資料型別 item...
索引的使用及注意事項
索引是資料庫對原始資料的一列或多列進行排序的一種結構,分為聚集索引和非聚集索引。聚集索引就像書的目錄一樣,排序結構和原表的一致 而非聚集索引就像字典的偏旁查詢一樣,排序順序和字典的不一樣,只是指出它在哪一頁。索引又分為單列索引和聯合索引,單列索引很容易理解,就是對某一列進行排序。聯合索引就是對多列排...