我添加了一個uiimageview作爲子視圖到我的cell.and然後在它的頂部放置一個標籤,使它看起來像一個按鈕。但whwn桌面向上或向下滾動圖像似乎得到再次畫。這變得非常醜陋,因爲我的圖像具有透明效果,一旦它出現並返回就會丟失。桌面視圖中的圖像
桌面視圖中的圖像
回答
好吧,我會盡力去猜測你的代碼是什麼樣子:)
如果圖像是畫,這意味着你將它們添加了電池每次表視圖查詢數據源多次:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView @"SomeID"];
if (cell == nil) {
// Create cell
}
UIImageView *imView = ... //Create and initialize view
[cell.contentView addSubview:imView];
...
return cell;
}
因此,每當您的單元格出現在屏幕上(在用戶滾動表格後)圖像視圖的新實例被添加到單元格中。正確的做法是添加圖像視圖只有一次 - 創建細胞時,然後獲取和設置現有的圖像視圖:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView @"SomeID"];
if (cell == nil) {
// Create cell
UIImageView *imView = ... //Create and initialize view
imView.tag = 1000; // or any other int value
[cell.contentView addSubview:imView];
}
UIImageView *iView = (UIImageView *)[cell.contentView viewWithTag:1000];
iView.image = ...// set required image
...
return cell;
}
每個小區由表重用查看現有的圖像視圖是時候
所以用這個方法填充適合當前行的圖像。
我爲每個單元使用了一個單獨的標識符。
通常它是不是一個好主意 - 在這種情況下,表將無法再利用其細胞和你可能會嚴重性能問題
這是偉大的!它現在的工作。但是我做了一個改變。以後我添加圖像添加到imView創建時它本身仍然有效。爲什麼你以後添加圖像? – humblePilgrim 2010-10-28 04:55:52
@Mithun - 稍後我添加了圖像,假設每個單元格可以具有不同的圖像,以便能夠爲任何行重新使用任何舊單元格。如果所有圖像都相同,則可以在單元創建時將其設置爲一次 – Vladimir 2010-10-28 05:48:29
- 1. 在桌面視圖中拉伸圖像
- 2. 桌面視圖鈦的背景圖像
- 3. 桌面視圖圖像加載緩慢
- 4. Flexnav桌面視圖
- 5. 「Overscroll」桌面視圖
- 6. 從iOS中的桌面視圖創建圖像
- 7. 緩存桌面視圖中的圖像 - 初學者
- 8. 在桌面視圖中加載圖像的延遲
- 9. 如何維護桌面視圖中的按鈕圖像狀態
- 10. 圖像在桌面視圖中滾動時重複單元格
- 11. 在桌面視圖單元格中設置圖像大小
- 12. 如何在桌面視圖中顯示圖像
- 13. 動態顯示桌面視圖單元格上的圖像
- 14. 圖像和scrollView渲染使我的桌面視圖不連貫
- 15. 加載圖像緩慢我的桌面視圖
- 16. 更改桌面視圖的按鈕圖像
- 17. UISearchbar靜態桌面視圖
- 18. 引導3桌面視圖
- 19. 桌面視圖中的請求鏈接
- 20. 桌面視圖中的Tableview swift
- 21. 桌面視圖中的複選框
- 22. 拖動swf中的桌面圖像
- 23. iOS更改視圖從滾動視圖到桌面視圖
- 24. 桌面視圖與圖像,緩慢加載和滾動
- 25. 從網站加載圖像到桌面視圖
- 26. 插入圖像到桌面視圖不覆蓋整個屏幕
- 27. 在桌面緩存圖像視圖細節
- 28. 從iOS桌面視圖創建圖像彈出
- 29. 在10.6.x中更改桌面圖像
- 30. 如何在單元格在桌面視圖中顯示視圖
發表您的cellForRowAtIndexPath方法。從看起來你錯誤地重複使用單元格。或者,更好的搜索 - 所以這裏有很多類似的問題 – Vladimir 2010-10-27 13:54:28
您的問題中應該至少有一個問號:) – willcodejavaforfood 2010-10-27 13:54:44
@Vladimir:我爲每個單元格使用了一個單獨的標識符。沒有幫助。我無法粘貼代碼作爲它的一部分我的工作\ – humblePilgrim 2010-10-27 14:55:03