UITableView 中显示错误的编辑控件
我在使用 UITableView 时遇到了一个奇怪的问题。当用户点击“编辑”按钮时,表格视图(具有多个部分的分组视图)应该显示每行的删除按钮 - 除了每个部分的最后一行,它有一个绿色的添加按钮。
当用户点击绿色按钮时,会插入一个新行,但现在最后一行有一个删除按钮。更奇怪的是,删除按钮的作用就像添加按钮。因此,似乎存在绘图故障,而不是分配正确样式的问题。 (广泛的 NSLogging 显示最后一个单元格正确获取了插入编辑样式。)
我尝试在单元格和 tableView 上设置 setNeedsDisplay,我尝试重新加载该部分/行/整个表格,但问题仍然存在。关于如何让 UITableView 显式重绘编辑控件有什么想法吗?
I'm having a strange problem with UITableView. When the user taps the Edit button, the tableview (which is a grouped view with multiple sections) is supposed to show delete buttons for each row--except for the final row in each section, which has a green add button.
When a user taps the green button, a new row is inserted, but now the final row gets a delete button. Even stranger, that delete button ACTS like an add button. So it seems there's a drawing glitch, rather than a problem in assigning the correct style. (Extensive NSLogging shows that the last cell is getting the Insert editing style correctly.)
I've tried setting setNeedsDisplay on the cell and the tableView, I've tried reloading that section/row/the entire table, but the issue persists. Any ideas on how to get UITableView to explicitly redraw the editing controls?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我也有同样的问题。似乎单元格被重复使用了太多。
您可以通过使用不同的标识符为插入的单元格强制使用新单元格来修复它:
I had the same problem. It seems like the cell's gets reused too much..
You could fix it by enforcing new cells for the inserted cells by using different identifiers:
我很确定您可以在 UITableView 委托中实现此操作,以防止它编辑最后一行:
I'm pretty sure you can just implement this in your UITableView delegate to prevent it from editing the last row: