1.對於 numberofsection numberofrowinsection,我們可以設定為其最多數,僅僅需要用兩個方法來確定是否顯示tableview.
#pragma mark uitableviewdatasource
- (nsinteger
)numberofsectionsintableview:(
uitableview
*)tableview
- (nsinteger
)tableview:(
uitableview
*)tableview numberofrowsinsection:(
nsinteger
)section if
(section == 1)
if(section == 3)
if(section == 4)
if(section == 7)
return1;
}2.通過每個row的高度來讓cell顯示與否。也就是說邏輯寫在heightforcell這邊,集中處理資料邏輯。
case1:
//預約
else
if(indexpath.
row== 1)
}else
if(indexpath.
row== 2)
} }}
break;
3.在寫cellforindexpath時,就是對應高度是0,它還是會呼叫cellforindexpath方法,所以heightforcell和cellforindexpath邏輯是一樣的,要注意用空cell處理else情況。if(
_shopdetailmodel
&& (
_shopdetailmodel
.service
& mwshopserviceyuding))
[self
configureyuyuecell
:(accessorydefaulttablecell
*)cell
atindexpath
:indexpath]; }
else
if(indexpath.
row== 1)
[self
configureyuyueinfocell
:(ydbriefcell
*)cell
atindexpath
:indexpath]; }
else
if(indexpath.
row== 2)
[self
configureyddingdancell
:(yddingdancell
*)cell
atindexpath
:indexpath]; }
}else
4.如果按照2 ,3步驟寫,cellfor**會比較亂繁雜,也可抽出部分邏輯判斷到configcell中,如下,這樣cellfor中就可以不用判斷此邏輯。如果有更好的建議,可以討論一下。
//配置預約時間點行
- (void
)configureyuyueinfocell:(
ydbriefcell
*)cell atindexpath:(
nsindexpath
*)indexpath }
5.參考美味的shopdetailviewcontroller
UITableView的使用總結
對於ios開發中最常用的課件之一uitableview,一直都是又愛又恨,愛的是功能太強大了,各種介面布局的效果幾乎都離不開他,恨的是 方法太多,感覺現在只學到了40 幾個基本的資料來源方法我就不寫了 一 剛剛用到了乙個可以設定tableview整體以動畫的方式滾動到表的某個位置如 上部 底部 和中...
UITableView控制項使用總結
一 uitableview 的使用步驟 1.告訴一共有多少組資料 nsinteger numberofsectionintableview uitableview tableview 2.告訴每一組一共有多少行 nsinteger tableview uitableview tableview nu...
UITableView基本使用 二
上篇部落格講解了uitableview的最基本的使用,這篇部落格做一些補充。有時候我們需要實現這樣的功能 1.比如改變系統自帶的選中cell的顏色 可以在cellforrowatindexpath 方法中建立cell時,自定義乙個uiview,frame等於cell.frame,然後設定這個自定義v...