我在TableView上有一些奇怪的行为,希望有人能帮助我。
我在导航中有一个带有搜索栏的TableView。单元格导致详细视图。每当我在TableView中搜索然后单击结果单元格以进入详细信息视图时,从详细信息视图返回到TableView时,第一个单元格就会在打开的搜索栏下方消失。
搜索:
选择项目(详细视图)然后返回(使用导航栏)时,第一个单元格将隐藏在搜索栏下方:
一些注意事项:
tableView.setContentOffset(CGPoint(x: 0, y: 0), animated: true)
print(tableView.contentOffset.y)
// -44.0
如果第一个单元格被隐藏,并且我先按下表格然后再向上按下来隐藏搜索栏,则问题自动消失,ContentInset恢复为0.0。
更新:我发现从后台返回应用程序后,视图也恢复了自身:
但是我无法在代码中复制它。我尝试过:
view.setNeedsLayout()
view.layoutIfNeeded()
tableView.reloadData()
答案 0 :(得分:0)
已解决,我设置了searchController.hidesNavigationBarDuringPresentation = false
,这导致了该错误。请参阅此帖子的答案:Search Bar in a Navigation Item collapses and gets stuck under status bar upon navigation pop, on iOS 11。
感谢您的帮助!
答案 1 :(得分:0)
在tableView(_ tableView:UITableView,didSelectRowAt indexPath:IndexPath)中放开(动画:true)