【问题标题】:IOS IPhone label moving when screen scrolled屏幕滚动时IOS iPhone标签移动
【发布时间】:2011-11-07 11:44:45
【问题描述】:

我很感激这可能是人们需要代码示例才能正确回答的问题,但不幸的是,我目前手头没有它们,所以我想问问人们的经验,以及他们以前是否见过这样的事情。

我有一个view,里面有一个 UITableView,有一堆单元格,在这个特定的视图上,如果我向下滚动屏幕,那么最后一个单元格中的标签会叠加在第一个标签的顶部细胞。

它只发生在第一个和最后一个单元格出现或不出现在 UITableView 中的视图上,具体取决于某些值是否在 JSON 提要中。

如果两个单元格都在UITableView 中,那么当您滚动时,底部单元格的标签会出现在顶部单元格的顶部。底部单元格的标签仍然存在,顶部单元格的标签仍然存在 - 只是底部的标签位于其顶部!

那么,有没有人见过这样的事情,如果是这样,有没有明显的事情我做错了这种情况的症状?

【问题讨论】:

  • 你的 cellForRowAtIndexPath 会有问题,你可能每次都在添加一个标签作为子视图,即使一个单元格已经出队。这是关于 SO 的大约 80% 的 UITableView 问题的答案。
  • 您可能是对的,将检查并查看。谢谢。
  • 看起来这就是问题所在,但现在的问题是如何检查单元格是否出队。
  • 如果你包含你的 cellForRowAtIndexPath 方法,你会得到一些建议,我敢肯定

标签: iphone ios uitableview tableview cells


【解决方案1】:

如何查找出队的单元格?

查看[UITableViewCell prepareForReuse],您可以在此处删除之前插入的子视图,然后再添加新的子视图。

这是 Apple 文档:

http://developer.apple.com/library/ios/documentation/UIKit/Reference/UITableViewCell_Class/Reference/Reference.html#//apple_ref/occ/instm/UITableViewCell/prepareForReuse

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-22
    • 1970-01-01
    相关资源
    最近更新 更多