一、基本介紹
在衆多移動應⽤用中,能看到各式各樣的表格資料 。
在ios中,要實作表格資料展示,最常用的做法就是使用uitableview,uitableview繼承自uiscrollview,是以支援垂直滾動,⽽且性能極佳 。
uitableview有分組和不分組兩種樣式,可以在storyboard或者是用代碼設定。
二、資料展示
uitableview需要⼀一個資料源(datasource)來顯示資料
uitableview會向資料源查詢一共有多少行資料以及每⼀行顯示什麼資料等
沒有設定資料源的uitableview隻是個空殼
凡是遵守uitableviewdatasource協定的oc對象,都可以是uitableview的資料源
展示資料的過程:
(1)調用資料源的下面⽅法得知⼀一共有多少組資料
- (nsinteger)numberofsectionsintableview:(uitableview *)tableview;
(2)調用資料源的下面⽅法得知每一組有多少行資料
- (nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section;
(3)調⽤資料源的下⾯⽅法得知每⼀⾏顯示什麼内容
- (uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath;
三、代碼示例
(1)能基本展示的“垃圾”代碼
實作效果:
(2)讓代碼的資料獨立
建立一個模型
提示:請自行體會把資料獨立出來單獨處理,作為資料模型的好處。另外,把什麼抽成一個模型,一定要弄清楚。
四、補充點
contentview下預設有3個⼦視圖
第2個是uilabel(通過uitableviewcell的textlabel和detailtextlabel屬性通路)
第3個是uiimageview(通過uitableviewcell的imageview屬性通路)
uitableviewcell還有⼀個uitableviewcellstyle屬性,⽤于決定使用contentview的哪些子視圖,以及這些子視圖在contentview中的位置