簡體   English   中英

導航控制器中的后退按鈕不會更改為自定義圖像

[英]Back button in navigation controller wont change to custom image

我有兩個 VC,第一個嵌入在 NC 中。 我的第二個 VC 是使用我的第一個 VC 中的 push segue 呈現的。 在我的第二個 VC 中,我試圖將后退按鈕更改為我擁有的自定義圖像,但它仍然使用導航欄中的默認圖像和文本。

viewDidLoad() 在我的第二個 VC 中:

override func viewDidLoad() {
    super.viewDidLoad()

    let back = UIImage(named: "back")
    self.navigationController!.navigationBar.backIndicatorImage = back
    self.navigationController!.navigationBar.backIndicatorTransitionMaskImage = back
    self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.plain, target: nil, action: nil)

    configureView()
}

為什么以下不更改我的第二個 VC 中的后退按鈕?

罪魁禍首是設置backButtonItem ,用新的后退按鈕替換您對后退按鈕所做的任何事情。 只需刪除:

self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.plain, target: nil, action: nil)

不要將標題設置為"" ,如果您不需要標題,請將標題設置為nil 無法評論,聲望不夠,抱歉。 從文檔中看到:

“項目的標題。如果為零,則不顯示標題。”

您需要在第一個視圖控制器上設置它。

在您的第一個視圖控制器上調用以下代碼。

override func viewDidLoad() {
    super.viewDidLoad()

    let back = UIImage(named: "back")
    self.navigationController!.navigationBar.backIndicatorImage = back
    self.navigationController!.navigationBar.backIndicatorTransitionMaskImage = back
    self.navigationItem.backBarButtonItem = UIBarButtonItem(title: "", style: UIBarButtonItemStyle.plain, target: nil, action: nil)

    configureView()
}

更多詳情https://sarunw.com/posts/how-to-change-back-button-image/ https://sarunw.com/posts/how-to-remove-text-from-uinavigationbar-back-button/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM