iOS 13-当搜索活动推送至其他VC时,该VC UITableView位于Swift 4中的导航栏下

iOS 13-当搜索活动推送至其他VC时,该VC UITableView位于Swift 4中的导航栏下,swift,uitableview,uinavigationcontroller,uisearchbar,ios13,Swift,Uitableview,Uinavigationcontroller,Uisearchbar,Ios13,我已经在iOS 12上检查过了,工作正常。问题是当我要搜索并推到第二个VC时,它工作正常。当我返回并再次按下第二个VC时,UtableView会显示在导航栏下。仅当搜索处于活动状态且第二次推送时,正常推送工作正常 我尝试过下面的解决方案,但这些都不适合我。 顶栏下方 forKeyPath:“隐藏阴影” edgesForExtendedLayout 自动调整滚动视图插图 extendedlayoutincludesopaquebar self.view布局 如果有人对此有任何答案和建议,请告诉我

我已经在iOS 12上检查过了,工作正常。问题是当我要搜索并推到第二个VC时,它工作正常。当我返回并再次按下第二个VC时,UtableView会显示在导航栏下。仅当搜索处于活动状态且第二次推送时,正常推送工作正常

我尝试过下面的解决方案,但这些都不适合我。
  • 顶栏下方
  • forKeyPath:“隐藏阴影”
  • edgesForExtendedLayout
  • 自动调整滚动视图插图
  • extendedlayoutincludesopaquebar
  • self.view布局

  • 如果有人对此有任何答案和建议,请告诉我。谢谢。

    如果任何人有相同的问题,请尝试此解决方案

    这对我有用。我希望这对你也有用

    目标-C

    -(void)viewWillDisappear:(BOOL)animated{
        if (@available(iOS 13.0, *)) {
            [self.navigationController.view setNeedsLayout]; 
            [self.navigationController.view layoutIfNeeded];
        }
    }
    
    Swift

    func viewWillDisappear(_ animated: Bool) {
        if (@available(iOS 13.0, *)) {
             self.navigationController?.view.setNeedsLayout()     
             self.navigationController?.view.layoutIfNeeded()
        }
    }
    

    如果这不起作用,请检查操作系统版本13.1.3。我认为它正在工作。

    如果任何人有相同的问题,请尝试此解决方案

    这对我有用。我希望这对你也有用

    目标-C

    -(void)viewWillDisappear:(BOOL)animated{
        if (@available(iOS 13.0, *)) {
            [self.navigationController.view setNeedsLayout]; 
            [self.navigationController.view layoutIfNeeded];
        }
    }
    
    Swift

    func viewWillDisappear(_ animated: Bool) {
        if (@available(iOS 13.0, *)) {
             self.navigationController?.view.setNeedsLayout()     
             self.navigationController?.view.layoutIfNeeded()
        }
    }
    

    如果这不起作用,请检查操作系统版本13.1.3。我认为它起作用了。

    没有解决方案吗?有人能给我推荐一下吗?参考链接?谢谢,没有解决办法吗?有人能给我推荐一下吗?参考链接?非常感谢。