UITableView中的單元格重用

2021-07-11 23:05:55 字數 1024 閱讀 8648

uitableview通過重用單元格來達到節省記憶體的目的:通過為每個單元格指定乙個重用識別符號(reuseidentifier),即指定了單元格的種類,以及當單元格滾出螢幕時,允許恢復單元格以便重用.對於不同種類的單元格使用不同的id,對於簡單的**,乙個識別符號就夠了.

假如乙個tableview中有10個單元格,但是螢幕上最多能顯示4個,那麼實際上iphone只是為其分配了4個單元格的記憶體,沒有分配10個,當滾動單元格時,螢幕內顯示的單元格重複使用這4個記憶體。

如下**:

-(uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath

***//dequeuereusablecellwithidentifier:方法查詢是否有可以重用的單元格,如果沒有則使用initwithstyle:reuseidentifier:方法構造器建立乙個可重用的單元格。***

nsuinteger row=[indexpath row];

nsdictionary *rowdict=[self

.listteams objectatindex:row];

cell.textlabel

.text=[rowdict objectforkey:@"name"];

nsstring *imagepath=[rowdict objectforkey:@"image"];

cell.imageview

.image=[uiimage imagenamed:imagepath];

cell.accessorytype=uitableviewcellaccessorydisclosureindicator;

return cell;

}

注:方法tableview:cellforrowatindexpath:uitableviewdatasourse協議中必須實現的方法之一。

UITableView 顏色交替單元格。

本文簡單介紹如何 itableview如設定交替單元格顏色。uitableview每行的背景顏色在載入第乙個檢視候就被設定,所以如果我們要改變每行的背景顏色,首先載入填充單元格資料的時候清理單元格背景顏色,然後根據數量行的數量設定其背景顏色。在方法中 uitableviewcell tablevie...

swift中UITableView的使用

自定義cell import uikit class tableviewcell uitableviewcell 乙個類a如果有自己獨有的初始化方法,自定義類b的時候如果b繼承自a。此時就重寫a類獨有的初始化方法 override init style uitableviewcell.cellsty...

UITableView中的cell的優化

1.cell的重用 所謂的cell的重用就是,檢視載入的時候只會建立當前檢視中的cell,或者比當前檢視多一點的cell,當檢視滾動的時候,滾出螢幕的cell會放進快取中,滾進螢幕的cell會根據identifier從快取中獲取cell,如此的迴圈往復,這樣只會建立固定的cell物件,節省了記憶體。...