[解決済み] タブバーアイテムの画像と文字色を変更する iOS
質問
私のタブバーはこちらです。
次の画像は、プログラムが実行され、"NEWS"の項目が選択されている様子を示しています。
バーティントカラーが思い通りに動作していることが確認できました
しかし、tintColorは画像にのみ影響し、テキストには影響しません。
また、アイテムが選択されると(上のニュースのように)、アイテムの色が青になります!
選択されているときはテキストの色が白に変わり、非選択のときは変わらないのはなぜですか?
基本的に項目の色と文字の色を常に白にしたいのですが、どうすればよいでしょうか?
どうすれば実現できるのでしょうか?よろしくお願いします。
個別の項目ごとにswiftのコードが必要なのでしょうか?
EDITです。
どのように解決するのですか?
UITabBarItemクラスのドキュメントより。
デフォルトでは、実際の非選択画像と選択画像は、ソース画像のアルファ値から自動的に作成されます。 ソースイメージのアルファ値から自動的に作成されます。システム着色を防ぐには システムカラーリングを防ぐには、画像に UIImageRenderingModeAlwaysOriginal を指定してください。
手がかりは、UIImageRenderingModeAlwaysOriginalを使用するかどうかではなく、重要なのはいつ使用するかです。
非選択項目のグレー色を防ぐには、非選択画像のシステム カラーリングを防ぐだけでよいでしょう。これを行う方法は次のとおりです。
var firstViewController:UIViewController = UIViewController()
// The following statement is what you need
var customTabBarItem:UITabBarItem = UITabBarItem(title: nil, image: UIImage(named: "YOUR_IMAGE_NAME")?.imageWithRenderingMode(UIImageRenderingMode.AlwaysOriginal), selectedImage: UIImage(named: "YOUR_IMAGE_NAME"))
firstViewController.tabBarItem = customTabBarItem
ご覧の通り、iOSにはUNSELECTEDの時だけ画像の元の色(白、黄色、赤など)を適用し、SELECTEDの時はそのままの色で表示するよう依頼しました。
また、選択状態に対して異なる色 (iOS のデフォルトの青色ではなく) を適用するために、タブ バーに色合いを追加する必要がある場合があります。上のスクリーン ショットのように、選択された状態に対して白色を適用しています。
self.tabBar.tintColor = UIColor.whiteColor()
EDITです。
関連
-
[解決済み] Xcode 6.3 - 現在の iOS Development 証明書または保留中の証明書要求がすでにあります。
-
[解決済み] iOSまたはmacOSで、インターネット接続が有効かどうかを確認するにはどうすればよいですか?
-
[解決済み] iOSのステータスバーの文字色を変更する方法
-
[解決済み] SwiftでStringを配列に分割する?
-
[解決済み] Swift で HTTP リクエストを行うにはどうしたらいいですか?
-
[解決済み] UITableView - トップにスクロールする
-
[解決済み] Swiftのプロトコルでオプションのメソッドを定義するには?
-
[解決済み】iOS 7 ナビゲーションバーのテキストと矢印の色
-
[解決済み】ストーリーボードでタブバーのアイテムの選択色を変更する
-
[解決済み] タブバーアイテムのテキストを削除し、画像のみを表示する
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
IOSラーニングノート「このクラスはxxxのキーバリューコーディングに対応していません」問題解決
-
IOS8 Development Guide Error Thread 1: signal SIGABRT
-
[解決済み] Xcode 7のエラーです。"Missing iOS Distribution signing identity for ..." (iOS配布用署名IDがありません)
-
[解決済み] UITableViewの下にある余分なセパレータをなくす
-
[解決済み] UITextViewのプレースホルダー
-
[解決済み] UIButtonのタイトルを左揃えにするにはどうしたらよいですか?
-
[解決済み] テキストフィールドを移動する方法(次へボタン/完了ボタン)
-
[解決済み] NSOperationとGrand Central Dispatchの比較
-
[解決済み] iOS 13でダークモードをオプトアウトすることは可能ですか?
-
[解決済み] swiftで電子メールアドレスを検証する方法は?