每次我向上或向下滚动时,已经绘制的单元格已经被重新绘制,因为当该单元格进入 View 时,“cellForRowAtIndexPath”会被再次调用。
有没有办法不对已调用的单元格调用“cellForRowAtIndexPath”。
也就是说,一旦为索引路径调用了 cellForRowAtIndexPath,当用户滚动时,它就不应该再次调用它。
我可以在标志数组中设置标志并手动执行,但有更直接的方法吗?
我的设计绝对会导致性能问题。我无法解释设计也无法更改它,因此我才问。
最佳答案
如果您不让“cellForRowAtIndexPath”方法再次调用,可能会产生性能问题, 但是您可以通过为每行分配不同的单元格标识符来做到这一点,如下所示。
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:[NSString stringWithFormat:@"Cell%d%d", indexPath.row, indexPath.section]];
关于ios - cellForRowAtIndexPath 如何仅调用它一次而不是在滚动后调用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13411695/