2017-02-09 78 views
1

我想控制我的視圖控制器類的標籤欄圖像。我想點擊一個按鈕並改變標籤欄圖標。 Snapchat目前在發送快照時會這樣做。視圖控制器改變標籤欄圖標和動作

+0

轉到故事板中的tabbarcontroller並設置bartintColor –

+0

Snapchat沒有tabbar:/ – SeanLintern88

+0

這是完全不同的。我不想改變顏色。我想通過點擊一個按鈕來改變標籤的圖像。 – user3338143

回答

0

你可以嘗試點擊一個按鈕執行此代碼:

viewControllerToChange.tabBarItem.image = UIImage(named: "your_image_name") 

可以說你有3個視圖控制器標籤欄。我們會打電話給他們ViewController1ViewController2,& ViewController3

你想點擊一個按鈕來改變ViewController1內爲ViewController3標籤欄圖標(圖像)。在ViewController1你可以有一個IBAction處理點擊一個按鈕,改變標籤欄圖標ViewController3像這樣:

@IBAction func buttonAction(_ sender: Any) { 

    if let viewController3 = self.tabBarController?.viewControllers?[2] { 

     viewController3.tabBarItem.image = UIImage(named: "your_image_name") 

    } 
} 

,如果你想在同一視圖控制器內改變標籤欄圖片你可以簡單的放self.tabBarItem.image = UIImage(named: "your_image_name")在點擊按鈕。

注意

tabBarItem.imageIS NOT一樣tabBarItem.selectedImage。如果您選擇選項卡時需要不同的圖像,則必須設置selectedImage。

相關問題