簡體   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