IOS中UITableViewCell生成方式

2021-08-21 15:57:38 字數 670 閱讀 5682

方案1:

根據工程需要,為每種型別的tableviewcell定義乙個子類,在子類中完成布局等工作。

方案2:

在通過對方案1的實踐中發現由此產生了大量的子類,而且由於部分子類採用nslayout進行布局,難以復用。

因此,有了方案2:建立乙個工廠類,通過工廠類根據型別,生成需要的cell,這個就分隔了cell的使用者以及cell的生成過程。

這是第一步,第二步,根據觀察,大部分tableviewcell無非多幾個label或多幾個imageview,因此可以建立乙個基類,

此基類採用懶載入的方式新增label或者imageview,在工廠類中對這些試圖進行布局,進行設定。

如:uitableviewcell:

- (uilabel*)labelinindex:(nsinteger)indx; // 此方法通過懶載入的方式載入label。

- (void)setnormaltext:(id)normaltext selecttext:(id)selecttext forlabelatindex:(nsinterger)index; // 設定其正常與選中時的狀態。

uitableviewcellfactory:

用於根據type生成tableviewcell。

以此為思路,可以處理button等ui檢視。

2018-06-14號

iOS7中UITableView中cell的使用

今天看到很多人提到,在ios7中,使用uitableview的時候,對於cell要注意 cell addsubview usertextfield 這種用法不能再用了,應該使用 cell.contentview addsubview usertextfield 的方式。如某人就遇到這種問題 調查了一...

iOS7中UITableView中cell的使用

分類 ios oc 2013 09 26 15 01 3099人閱讀收藏 舉報 今天看到很多人提到,在ios7中,使用uitableview的時候,對於cell要注意 cell addsubview usertextfield 這種用法不能再用了,應該使用 cell.contentview adds...

iOS中uitableview滑動刪除新增按鈕

一 如果我們不新增任何按鈕,直接需要乙個刪除的話,很簡單 void tableview uitableview tableview commiteditingstyle uitableviewcelleditingstyle editingstyle forrowatindexpath nsinde...