码迷,mamicode.com
首页 > 移动开发 > 详细

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

时间:2018-03-03 17:00:31      阅读:223      评论:0      收藏:0      [点我收藏+]

标签:div   led   blog   row   延时处理   owa   dexp   选中   mit   

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

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

 

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

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

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

 

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

临时解决办法:

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

2、加一个延时处理

 

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

 

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

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

标签:div   led   blog   row   延时处理   owa   dexp   选中   mit   

原文地址:https://www.cnblogs.com/yajunLi/p/8496650.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!