[解決済み] ボトムナビゲーションビューで選択されたタブの色
2022-04-21 01:58:42
質問
を追加しています。
BottomNavigationView
で、選択されたタブのテキスト(およびアイコンの色合い)の色を変えたいと思います(選択されていないタブを灰色にする効果を得るため)。異なる色を
android:state_selected="true"
をカラーセレクターリソースファイルの中に入れても、うまくいかないようです。また、追加のアイテム・エントリーを
android:state_focused="true"
または
android:state_enabled="true"
が、残念ながら効果はありません。また
state_selected
属性に false を指定して、デフォルト(非選択)の色を指定しても、うまくいきません。
以下は、レイアウトにビューを追加する方法です。
<android.support.design.widget.BottomNavigationView
android:id="@+id/bottom_navigation"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
app:itemBackground="@color/silver"
app:itemIconTint="@color/bnv_tab_item_foreground"
app:itemTextColor="@color/bnv_tab_item_foreground"
app:menu="@menu/bottom_nav_bar_menu" />
以下は、私のカラーセレクタ(
bnv_tab_item_foreground.xml
):
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@android:color/darker_gray" />
<item android:state_selected="true" android:color="@android:color/holo_blue_dark" />
</selector>
そして、私のメニューリソース(
bottom_nav_bar_menu.xml
):
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:id="@+id/action_home"
android:icon="@drawable/ic_local_taxi_black_24dp"
android:title="@string/home" />
<item
android:id="@+id/action_rides"
android:icon="@drawable/ic_local_airport_black_24dp"
android:title="@string/rides"/>
<item
android:id="@+id/action_cafes"
android:icon="@drawable/ic_local_cafe_black_24dp"
android:title="@string/cafes"/>
<item
android:id="@+id/action_hotels"
android:icon="@drawable/ic_local_hotel_black_24dp"
android:title="@string/hotels"/>
</menu>
ご協力をお願いします。
どのように解決するのですか?
を作成する際に
selector
そうしないと、デフォルトの状態だけが使用されることになります。セレクタの項目を次のように並べ替える必要があります。
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:color="@android:color/holo_blue_dark" />
<item android:color="@android:color/darker_gray" />
</selector>
で使用する状態も
BottomNavigationBar
は
state_checked
ない
state_selected
.
関連
-
[解決済み] Androidでプログレスバーの進行色を変更する方法
-
Android.mk:7: *** セパレータがありません。
-
プログラム "git.exe "を実行できない場合の正しい解決方法です。CreateProcessエラー=2
-
AndroidStudio3.0 Error:Execution failed for task ':app:processDebugResources'.
-
android block certificate validation CertPathValidatorException: 認証パスのトラストアンカーが見つかりません
-
android exception - aapt.exe has stopped working.
-
問題 ---- Android ---- ActivityManager: Error: アクティビティクラス{xx/xx.MainActivity}が存在しない
-
Android ProgressBarの色を変更する
-
Androidの美しいSeekBarスタイルのカスタマイズ
-
android.content.ActivityNotFoundException を解決します。Intent問題を処理するActivityが見つからない
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
armeabi-v7a armeabi arm64-v8a パラメータの意味説明
-
java.lang.NullPointerException: NULLオブジェクト参照で仮想メソッド......を呼び出そうとしました。
-
Gradle の同期に失敗しました。com.android.tools.build:gradle が見つかりませんでした。
-
エラーが発生しました。ArrayAdapter は、リソース ID が TextView である必要があります。
-
Android studioのインストールと問題発生、Emulator: PANIC: AVDのシステムパスが見つかりません。
-
android block certificate validation CertPathValidatorException: 認証パスのトラストアンカーが見つかりません
-
Android基本アプレット
-
アンドロイドリストビュー
-
アンドロイドシェイプ、グラデーション、角丸、ボーダーラインの設定
-
アンドロイドにおけるトークンの利用