簡體   English   中英

如何在導航欄中添加圖像和按鈕設計?

[英]How to add image and button design to the navigation bar?

我想在導航欄的設計中添加按鈕和圖像,但無法成功添加圖片。 我在 viewDidLoad 中嘗試了以下代碼:

 let logo = UIImage(named: "logo.png")
    let imageView = UIImageView(image:logo)
    navigationController?.navigationBar.barTintColor = UIColor.green
    self.navigationItem.titleView = imageView

我嘗試了代碼,導航欄如下所示: 在此處輸入圖像描述 由於我嘗試的代碼,邊緣有空間。 我想將圖片對齊到屏幕的右側。 我想將按鈕對齊到屏幕的左側。

我想要的設計圖片如下: 在此處輸入圖像描述

我應該為此嘗試什么代碼?

你應該試試這個,希望這會奏效

let backButton: UIBarButtonItem = UIBarButtonItem(title: "Back", style: .plain, target: self, action: #selector(back))
        self.navigationItem.leftBarButtonItem = backButton
    
    let logo = UIImage(named: "google_logo.png")
    let imageView = UIImageView(image:logo)
    imageView.contentMode = .scaleAspectFit
    self.navigationItem.titleView = imageView

在此處輸入圖像描述

這是你想要的嗎? 雖然背景圖像被拉伸,因為我只是隨機選擇一個圖像,它沒有正確的導航欄分辨率。

在 iOS 14 中,它看起來像這樣。 好吧,我也google了,因為這也是我第一次自定義導航欄的背景圖片。 我通常使用純色作為背景。

在此處輸入圖像描述

    override func viewDidLoad() {
        super.viewDidLoad()
        
        view.backgroundColor = .white
        
        let img = UIImage(named: "Human")!
        navigationController?.navigationBar.setBackgroundImage(img.resizableImage(withCapInsets: UIEdgeInsets(top: 0, left: 0, bottom: 0 ,right: 0), resizingMode: .stretch), for: .default)

        let backImg = UIImage(named: "back")?.withRenderingMode(.alwaysOriginal)
        let leftButton = UIBarButtonItem(image: backImg, style: .plain, target: self, action: #selector(backTapped))
        navigationItem.leftBarButtonItem = leftButton
    }

暫無
暫無

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

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