繁体   English   中英

清除搜索栏导航栏的过渡

[英]Clean transition for a searchbar navigationBar

我有一个导航栏,其中有搜索栏作为标题视图。 当我想过渡到下一个viewController时,就会出现问题。

如您所见,转换的方式是根本不更改navigationBar,而是仅将viewController滑入..如下图所示。

在此处输入图片说明

在此处输入图片说明

在此处输入图片说明

这种过渡会带来一些意想不到的结果,例如,后箭头被涂上了原始图像所没有的白色层。

在病房之后,我签出了其他应用程序。.我意识到,在其他应用程序中,包含搜索栏的导航栏的转换是完全不同的...

例如,在facebook中,包括导航栏的整个viewController被替换,如下所示。

在此处输入图片说明

在此处输入图片说明

过渡对于我来说太快了,但是您可以尝试在Facebook中进行搜索,然后看到包括导航栏在内的整个ViewController都被刷掉了。

有谁知道如何实现这样的目标?

谢谢!

在具有搜索栏的viewController中,使用以下deinit方法

deinit {
    if #available(iOS 9.0, *) {
        searchController.loadViewIfNeeded()
    } else {
        let _ = searchController.view
    }
}

我认为您的问题在于演示环境! 尝试这样的事情:

self.definePresentationContext = true

将这行代码放入SearchBarOwnerViewController的viewDidLoad

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM