我添加了一个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. “Overscroll”桌面视图
- 4. 缓存桌面视图中的图像 - 初学者
- 5. 在桌面视图中加载图像的延迟
- 6. 如何维护桌面视图中的按钮图像状态
- 7. 在桌面视图单元格中设置图像大小
- 8. 图像在桌面视图中滚动时重复单元格
- 9. 如何在桌面视图中显示图像
- 10. 加载图像缓慢我的桌面视图
- 11. 图像和scrollView渲染使我的桌面视图不连贯
- 12. 动态显示桌面视图单元格上的图像
- 13. 桌面视图中的复选框
- 14. 桌面视图中的Tableview swift
- 15. 桌面视图中的请求链接
- 16. 拖动swf中的桌面图像
- 17. 插入图像到桌面视图不覆盖整个屏幕
- 18. 桌面视图与图像,缓慢加载和滚动
- 19. 在10.6.x中更改桌面图像
- 20. 如何在单元格在桌面视图中显示视图
- 21. 为了摆脱桌面视图单元格中重叠的图像
- 22. 更新桌面视图(编辑后)中的条目并显示在桌面视图中的问题
- 23. 桌面布局的文本视图
- 24. 分割视图控制器内的桌面视图
- 25. 采集图像(的Acquia开发桌面)
- 26. 带有很多图像的iphone桌面
- 27. 桌面上的边框图像
- 28. WPF中的桌面截图
- 29. Linux中的桌面图标
- 30. 如何更改桌面视图之外的标签文本时,在桌面视图中的按钮是点击
发表您的cellForRowAtIndexPath方法。从看起来你错误地重复使用单元格。或者,更好的搜索 - 所以这里有很多类似的问题 – Vladimir 2010-10-27 13:54:28
您的问题中应该至少有一个问号:) – willcodejavaforfood 2010-10-27 13:54:44
@Vladimir:我为每个单元格使用了一个单独的标识符。没有帮助。我无法粘贴代码作为它的一部分我的工作\ – humblePilgrim 2010-10-27 14:55:03