2012-05-16 65 views
1

我有自定義單元格的表格視圖。單元格具有圖像視圖,標籤和進度視圖。我想實現的是根據發生的事件更新特定單元格中的進度視圖。我的想法是通過事件中的名稱標籤來查找單元格,然後更新進度視圖。這可能不是一種有效的方式,但我想不出其他方式。其他想法也表示讚賞。提前致謝。iOS Table View Finding A Cell

回答

2

您可以使用NSDictionary和名稱作爲鍵,NSIndexPath作爲對象。然後,可以使用字典中的名稱查找給定單元格的索引路徑。

+0

字典效果不錯:) – user1061894

1

UITableView有一個'cellForRowAtIndexPath:`方法,它應該爲您提供特定行的單元格。

即像

// Get visible cell for data item 
NSInteger row = [myArrayOfThings indexOfObject:thing]; 
NSIndexPath *inedexPath = [NSIndexPath alloc] initWithRow:row section:0]; 
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indeexPath]; 

// Update cell here ... 
... 

免責聲明:代碼從內存類型 - 你可能要看看文檔的一些方法和名字:)

0

的更多更好的辦法是用標籤,

你可以給每一個小區的唯一的標籤,並通過這種方法訪問細胞

//method of UIView(UIViewHierarchy) 
- (UIView *)viewWithTag:(NSInteger)tag; 
// can be used like this 
UITableViewCell *cell = (UITableViewCell*)[tableView viewwithtag:tag]; 
+1

只有在表格視圖沒有回收單元格的情況下,這種行爲纔有效嗎? – deanWombourne

+0

好吧,如果標識符對每個單元格都是唯一的,那麼它可以工作。 –

+0

如果你有100行,但只顯示7個再生細胞如何有100個唯一標識符 - 細胞將被回收!您是否計劃在每次顯示單元時重新貼上單元格? – deanWombourne