1.給類屬性設定資料的方法:重寫set方法、傳入模型
2.在自定義類時應考慮全面,一些初始化操作需要重寫時應注意系統自帶的其他init方法是否有效
對於控制項,使用init和initwithframe:方法時都會呼叫initwithframe方法,因此重寫的initwithframe:方法可以同時響應init與initwithframe兩個方法。但使用initwithframe方法時不會呼叫init方法,因此重寫init方法時無法響應initwithframe:方法
3.mvc:模型(model)、檢視(view)、控制器(controller)程式設計思想
4.view的封裝總結:
4.1如果乙個view內部的子控制項比較多,一般會考慮自定義乙個view,把它內部的子控制項的建立遮蔽起來,不讓外界關心
外界可以傳入對應的模型資料給view,view拿到模型資料後給內部的子控制項設定對應資料
4.2封裝控制項的基本步驟:
在initwithframe:方法中新增子控制項,提供便利構造方法
在layoutsubviews方法中設定子控制項的frame(一定要呼叫super的layoutsubviews)
增加模型屬性,在模型屬性set方法中設定資料到子控制項中
5.ios開發中xib和storyboard的對比
5.1共同點:
都用來描述軟體介面
都用inte***ce builder工具來編輯
本質都是轉換成**去建立控制項(右鍵open as - source code可以檢視原始碼)
5.2不同點:
xib用來描述區域性的ui介面
storyboard用來描述整個軟體的多個介面,並能展示多個介面之間的跳轉關係
6.載入xib的方法
//方法1(常用)
nsarray *views = [[nsbundle mainbundle] loadnibnamed:@「xib檔名」 owner:nil options:nil];
//方法2
uinib *nib = [uinib nibwithnibname:@「xib檔名」 bundle:nil];
nsarray *views = [nib instantiatewithowner:nil options:nil];
Objective C 學習記錄 5
2018.7.27 陣列的定義和使用 陣列分為不可變陣列和可變陣列 nsarray array nsarray arraywithobjects ddd mycl,nil nsmutablearray mutablearray mutablearray addobject view addobjec...
Objective C 學習記錄 17
1.uiscrollview的分頁與uipagecontrol 開啟scrollview的翻頁功能,預設以scrollview的size為1頁 scrollview.pagingenabled yes 通過scrollview的delegate實現控制pagecontrol顯示頁碼的兩種常用方法 使...
Objective C 學習記錄 19
1.autolayout實現uilabel的包裹文字 位置約束可以使uilabel在不換行的情況下自動包裹文字 寬度約束可以確定文字能顯示的最大寬度 2.螢幕適配 自動布局總結 autoresizing 在storyboard中,可以使用6根線確定6種特定約束 autolayout 約束和參照,警告...