名称标签每次加载时重叠

Name Label overlapping each time it is loaded

我们的应用程序有一个带有名称标签的社交提要,类似于带有 FeedController 和 FeedCell class 的 Facebook。每次我们滚动回先前加载的单元格时,它都会重新加载,因此名称标签变得更暗,文本变得更粗并开始重叠。我们如何解决这个问题?我们尝试了 prepareToReuse 方法并将单元格的标签设置为 nil,但这没有帮助。任何帮助将不胜感激!

您似乎在重新生成标签并将其添加到单元格的内容视图中,每次重复使用该标签时。

在您的 FeedCell class 中,确保仅在您的初始化程序中启动您的界面元素。从那里,您可以在 UITableViewDataSource.

cellForRowAtIndexPath: 方法中用数据填充单元格

cellForRowAtIndexPath: 中,请确保不要向单元格添加任何视图,因为这可能会导致您所描述的问题。根据经验,我确保在单元格 subclass 的初始化程序中初始化视图,并且仅在以下情况下操作这些视图的属性(如 hiddenalpha 等)使用细胞。

接下来,您可以使用 prepareForReuse 清除单元格中上次使用该单元格时可能遗留下来的任何数据。但在许多情况下,这不是必需的,因为数据将在 cellForRowAtIndexPath:.

中更改