从iOS 11搜索控制器导航时,不需要的UITableView重新加载动画

从iOS 11搜索控制器导航时,不需要的UITableView重新加载动画,第1张

概述我有一个视图控制器,其中包含一个包含聊天列表的tableview,一个在导航项中添加的搜索控制器(iOS 11功能) let searchController = UISearchController(searchResultsController: nil)searchController.dimsBackgroundDuringPresentation = falsenavigationI 我有一个视图控制器,其中包含一个包含聊天列表的tablevIEw,一个在导航项中添加的搜索控制器(iOS 11功能)
let searchController = UISearchController(searchResultsController: nil)searchController.dimsBackgroundDuringPresentation = falsenavigationItem.searchController = searchControllerdefinesPresentationContext = true

当用户在表格视图中点击聊天时,应用程序会使用另一个包含该聊天消息的表格视图来推送新的视图控制器.这有点像它应该:

问题是,当用户激活搜索控制器,找到一些聊天并点击它时,包含表视图的推送视图控制器和聊天消息会做一些非常奇怪的动画,表格视图不应该发生:

我在实际导航之前加载数据,并使用表视图上的reload()将其绑定到vIEwDIDLoad中的表视图.有问题的表视图使用自动布局和自定义单元格.

问题与UITableView has unwanted animation when reloadData is called非常相似,但对我来说只有在iOS 11搜索控制器处于活动状态时才会发生.

编辑:如果我删除tableVIEw.rowHeight = UItableVIEwautomaticDimension并使用func tableVIEw使用固定高度(_ tableVIEw:UItableVIEw,heightForRowAt indexPath:IndexPath) – > CGfloat问题仍然存在

解决方法 就个人而言,我只是在呈现新的视图控制器之前隐藏searchVIEw控制器.
(例如,使用带有完成处理程序的UIVIEw.animates)

我不打算进一步调查,因为自iOS11以来,安全区管理存在一个深奥的问题.一个BUG? 总结

以上是内存溢出为你收集整理的从iOS 11搜索控制器导航时,不需要的UITableView重新加载动画全部内容,希望文章能够帮你解决从iOS 11搜索控制器导航时,不需要的UITableView重新加载动画所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1100396.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存