oc語言的基本知識
1.對於oc中的函數分爲[實例對象 消息名], [類名 消息名], 函數名(參數),
2.對於 struct CGAffineTransform
{
CGFloat a, b, c, d; //a, d 表示比例。
CGFloat tx, ty; //tx,ty表示位置
}
3.@property 作用
(1)用於自動的生成getter setter方法
(2)用於生成一個帶_的成員變量,直接讀取成員變量並不需要setter,getter方法。
4.在OC中,很多方法的第一個參數,都是觸發該方法的對象。
如利用[_button addTarget: self action: @selector(clickbutton:) forControlEvents: UIControlEventTouchUpInsert]
- (void)clickbutton :(UIButton *) button // 此處首個參數就是出發事件的按鈕。
5.代碼的先後順序依賴問題(懶加載):
通過getter方法來實現懶加載,即是在調用的最後時間來使用調用此屬性。
也就是說要使用self.屬性,使用屬性,因爲這樣可以調用getter,以後調用成員屬性的使用一定要使用self.成員屬性。
6.包 [NSBundle mainBundle]指的是程序安裝之後對應的程序包,裏面含有編寫程序時的素材。Bundle指的是包的意思。
//下句代碼指的是用於獲取程序包裏的相應文件的路徑
NSString *path = [[NSBundle mainBundle] pathForResource:@ImageList" ofType:@"plist"];
//然後來獲取ImageList.plist裏第一個文件類型即爲Array
_imagList = [NSArray arrayWithContentsOfFile:path];
//通過此是獲取ImageList.plist裏的內容。
NSLog(@"%@", _imagList);
7.strong & weak
*控件
如果用stroyboard拖線,控件用weak
如果用代碼創建界面,控件可以用strong
*自定義對象,需要使用strong
*NSString, 使用copy
*數學型的int, 使用assign
2.對於 struct CGAffineTransform
{
CGFloat a, b, c, d; //a, d 表示比例。
CGFloat tx, ty; //tx,ty表示位置
}
3.@property 作用
(1)用於自動的生成getter setter方法
(2)用於生成一個帶_的成員變量,直接讀取成員變量並不需要setter,getter方法。
4.在OC中,很多方法的第一個參數,都是觸發該方法的對象。
如利用[_button addTarget: self action: @selector(clickbutton:) forControlEvents: UIControlEventTouchUpInsert]
- (void)clickbutton :(UIButton *) button // 此處首個參數就是出發事件的按鈕。
5.代碼的先後順序依賴問題(懶加載):
通過getter方法來實現懶加載,即是在調用的最後時間來使用調用此屬性。
也就是說要使用self.屬性,使用屬性,因爲這樣可以調用getter,以後調用成員屬性的使用一定要使用self.成員屬性。
6.包 [NSBundle mainBundle]指的是程序安裝之後對應的程序包,裏面含有編寫程序時的素材。Bundle指的是包的意思。
//下句代碼指的是用於獲取程序包裏的相應文件的路徑
NSString *path = [[NSBundle mainBundle] pathForResource:@ImageList" ofType:@"plist"];
//然後來獲取ImageList.plist裏第一個文件類型即爲Array
_imagList = [NSArray arrayWithContentsOfFile:path];
//通過此是獲取ImageList.plist裏的內容。
NSLog(@"%@", _imagList);
7.strong & weak
*控件
如果用stroyboard拖線,控件用weak
如果用代碼創建界面,控件可以用strong
*自定義對象,需要使用strong
*NSString, 使用copy
*數學型的int, 使用assign
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.