UISearchBar在带有大标题的UINavigationBar中闪烁

时间:2018-12-15 16:02:17

标签: ios swift

我正在创建一个基于UINavigationController的应用,并希望以iOS 12样式进行操作:具有大标题,并且SearchBar内显示的NavigationBar

不幸的是,我有一个问题,就是SearchBar会在下一个(或上一个)View Controller的动画启动后立即消失。动画制作完成后,搜索栏将再次可见。必须仔细观察才能看到效果,但是如果使用滑动手势回去,效果会非常好。

UISearchBar disappeares when animation between View Controller starts

为了在我的完整应用程序之外重现该问题,我创建了一个简单的小应用程序,其中以UINavigationController作为开头的ViewController和普通的ViewController(仅带有“ 下一步”按钮)显示为RootViewController。在NavigationItem中将“大标题”设置为“自动”,在NavigationBar上,“首选大标题”被设置为True。在视图控制器的viewDidLoad中,我将UISearchController的实例分配给NavigationItem就像这样简单:

class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()

        let searchController = UISearchController(searchResultsController: nil)
        navigationItem.searchController = searchController
    }
}

“下一步”按钮的周围View Controller带有“ 显示Segue,因此,我可以一遍又一遍地推送相同的View Controller进行测试。 / p>

我想要的行为与iOS 12 Files App中的行为相同:在那里,SearchBarNavigationBar内保持静态,即使导航发生。

我已经花了一些时间寻找解决方案,但找不到真正的东西。

谢谢, 彼得

0 个答案:

没有答案
相关问题