簡體   English   中英

迭代UITableView中的所有單元格

[英]Iterate all cells in s UITableView

我想迭代所有uitablewview單元並顯示每個單元中包含的uitextview的文本。 我的表可以有很多行,要覆蓋所有必須滾動的行。 我做了一個實現,但是它只滾動顯示當前可見單元格的文本,其他的則為null。

for (int i = 0; i < [propertiesTableView numberOfRowsInSection:0]; i++) {
    UITableViewCell* cell = [propertiesTableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:i inSection:0]];
    UITextView* tx = (UITextView*)[cell viewWithTag:2];
    NSString* temp = tx.text;
    NSLog(@"%@", temp);
}

如何解決這個問題?

發生這種情況是因為僅實例化了可見的單元格(還記得dequeueReusableCellWithIdentifier:函數嗎?)。 您應該從表數據源中提取所需的信息。

是的,這種行為是預期的,因為出於性能方面的考慮,表視圖並不始終保留所有初始化的單元格。 您的解決方案只是更新數據源-例如,如果它是一個數組,則對其進行迭代並相應地更改值-這就是MVC的功能(快速UI,獨立模型)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM