簡體   English   中英

輕按Button時更改UIBarButtonItem tintColor?

[英]Change UIBarButtonItem tintColor when Button is tapped?

我有一個UIBarButtonItem定義如下:

let cardNavButton: UIBarButtonItem = UIBarButtonItem(image: UIImage(named: "card")!, style: UIBarButtonItemStyle.Bordered, target: self, action: self.headerCardButtonSelector)
self.navigationItem.rightBarButtonItem = cardNavButton
cardNavButton.tintColor = UIColor.whiteColor()

當用戶點擊按鈕時,其顏色會改變。 我如何定義用戶點擊按鈕時顯示的顏色?

此按鈕上顯示的圖像具有多種顏色,但僅顯示一種顏色。 我該如何改變?

假設“ s”是正確的十六進制值字符串,例如綠色的“ 00ff00”,請在點擊按鈕時使用以下代碼:

if let num2 = Int(s, radix: 16) {
                flamingoBtn.tintColor = UIColor(netHex:num2)
            }
            else{
                flamingoBtn.tintColor = UIColor.blueColor() //fallback to some default color
            }

您可以使用自定義UIButton創建UIBarButtonItem並為狀態正確設置顏色。

            let customButton: UIButton = UIButton()
            //customize yout custom button
            let cardNavButton: UIBarButtonItem = UIBarButtonItem(customView: customButton)
            self.navigationItem.rightBarButtonItem = cardNavButton

暫無
暫無

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

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