iOS 在tableview的侧滑事件里执行tableView.selectRow无效的解决办法

很奇怪的问题,在执行默认选中一个cell的时候,突然发现这句话不起作用了

(我的场景是:当前cell侧滑删除后,默认选中上一个cell)

搞了半天,终于发现罪魁祸首竟然是因为:这句话写在了侧滑事件的方法里。

func tableView(_ tableView: UITableView, commit editingStyle: UITableViewCellEditingStyle, forRowAt indexPath: IndexPath) {
//..... 执行tableView.selectRow无效
}

试了几次,在正常函数体里执行这句话,都是正常的,在这里就是无效。

原因暂时没想到,猜测就是因为侧滑后cell恢复的系统事件阻塞了这句话执行

临时解决办法:

1、转移这句话的执行地方

2、加一个延时处理

我用的第二个解决办法,延后了0.5s执行,发现没问题了。

知道原因的小伙伴欢迎留言告知下~3Q

上一篇:Java GUI学习,贪吃蛇小游戏


下一篇:VUE设置浏览器icon图标