2017-03-05 3 views
0

多色タブバーアイコンを表示する方法が必要ですが、何らかの理由でiOSがアイコンを単色で描画しています。白黒アイコンの代わりに多色タブバーアイコンを設定

私の最初のビューコントローラのviewDidLoadtabBarItem.image = #imageLiteral(resourceName:"routineIcon").withRenderingMode(.alwaysOriginal)のコード行を含めるなど、さまざまな方法を試しましたが、運がなかったのです。

カラー情報をモノクロにしなくても、タブバーアイコンに保持できる方法はありますか?多色であれば、それは数千倍に見えます。

おかげで、あなたは新しいUITabBarItemを作成し、ビューコントローラのtabBarItemプロパティに割り当てる必要があり

ハリッシュ

答えて

1

。あなたは資産カタログ(あなたがすべき)を使用している場合

// In viewDidLoad() 
self.tabBarItem = UITabBarItem(title: "Hello world!", image: #imageLiteral(resourceName: "routineIcon").withRenderingMode(.alwaysOriginal), tag: 0) 

はまた、あなたの資産の設定であなたはあなたが常に元に設定することができます設定としてレンダリング持っていることに気づきます。 イメージを使用している場合は、.withRenderingMode(.alwaysOriginal)を省略できます。

// In viewDidLoad() 
self.tabBarItem = UITabBarItem(title: "Hello world!", image: #imageLiteral(resourceName: "routineIcon"), tag: 0) 

あなたは1

// In viewDidLoad() 
self.tabBarItem = UITabBarItem(title: "Hello world!", image: #imageLiteral(resourceName: "routineIcon"), selectedImage: #imageLiteral(resourceName: "routineIconSelected")) 

注持っている場合は、選択した画像を取るイニシャライザもあります:一般的なルールとして、修正するシステムUIBarItemオブジェクト(タブバーのUITabBarItemUIBarButtonItemについては、ナビゲーションバーまたはツールバー)は機能しないことが多く、新しいものを作成する必要があります。
システムバーのアイテムは、init(tabBarSystemItem:tag:)UITabBarItem)またはinit(barButtonSystemItem:target:action:)UIBarButtonItem)で作成されたアイテムです。
ストーリーボードを使用する場合は、システムバー項目またはカスタムバー項目を使用することができます。

+0

それはうまくいった!本当にありがとう!完全に新しいものを作成するのではなく、そのような特定のものを修正することが涼しいので、私が上に持っていたコードの行が最終的にうまくいくことを願っています – Harish

関連する問題