gpt4 book ai didi

ios - reloadRowsAtIndexPaths 和滑动操作

转载 作者:行者123 更新时间:2023-11-28 08:51:23 27 4
gpt4 key购买 nike

我有一个表格 View 。每个单元格每 10 秒更新一次。每个单元格都有 editActions,例如:

enter image description here

但是当我向左滑动以查看操作时,同时调用 reloadRowsAtIndexPaths 函数时,它会关闭此操作。有没有办法只更新单元格中的值而不关闭操作?

func controller(controller: NSFetchedResultsController, didChangeObject anObject: AnyObject, atIndexPath indexPath: NSIndexPath?, forChangeType type: NSFetchedResultsChangeType, newIndexPath: NSIndexPath?) {

switch type {
case .Insert:
if let _newIndexPath = newIndexPath {
self.tableView.insertRowsAtIndexPaths([_newIndexPath], withRowAnimation: .None)
}
case .Delete:
if let _indexPath = indexPath {
self.tableView.deleteRowsAtIndexPaths([_indexPath], withRowAnimation: .None)
}
case .Update:
if let _indexPath = indexPath {
self.tableView.reloadRowsAtIndexPaths([_indexPath], withRowAnimation: .None)
}
default:
self.tableView.reloadData()
}

}

最佳答案

reloadRowsAtIndexPaths: 肯定会重置单元格的状态。克服这一点的一种方法是:

  1. 就在您调用 reloadRowsAtIndexPaths: 之前检查操作是否已显示,并将其存储在 BOOL 中。您用于显示操作的库很可能具有检查其状态的方法。

  2. 重新加载后以编程方式恢复操作显示的状态。

关于ios - reloadRowsAtIndexPaths 和滑动操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34134032/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com