美文网首页
iOS 11 tableView 因为firstResponde

iOS 11 tableView 因为firstResponde

作者: gjgoodjob | 来源:发表于2017-12-01 13:25 被阅读27次

场景:

长按某个cell,弹出editMenu,点击editMenu的某个item,删除cell对应的数据,reloadData,刷新UI。

问题:

iOS11之UI可以正常刷新。iOS11之后无效。

查找问题:

editMenu的item的回调方法是在cell中回调到控制器的。回调出来删除数据后调用reloadData后,不走数据源方法。

解决问题:

在reloadData之前,[self.tableView becomeFirstResponder]。

原因:

在cell中展示editMenu,需要让cell变为第一响应者。然后回调到控制器中,在iOS11中,直接在该cell的block回调中调用reloadData无效。tableView的reloadData为什么和firstResponder有关?为什么iOS11之前都没问题?

相关文章

网友评论

      本文标题:iOS 11 tableView 因为firstResponde

      本文链接:https://www.haomeiwen.com/subject/mytskttx.html