2017-12-22 17 views
0

これはAdobe Illustratorでの私のアプリデザインのスナップ/スクリーンショットです: 現在のメニューによっては、それぞれのセクションが以下のようにハイライト表示されますこの場合)。現在選択されているナビゲーションメニュー項目の背景をハイライト表示

私はあなたが/styles.xmlの下にアプリを追加することにより、作成したカスタムThemeOverlay経由ITEM/ICONの色を変えることができることを知っている。このようなテーマ=「/ afore_mentioned_theme_overlay @スタイル」:

<style name="ThemeOverlay.AppCompat.navTheme"> 

    <!-- Color of text and icon when SELECTED --> 
    <item name="colorPrimary">@color/color_of_your_choice</item> 

    <!-- Background color when SELECTED --> 
    <item name="colorControlHighlight">@color/color_of_your_choice</item> 

</style> 

しかし、これは、アイコンの下のセクションを強調表示するのではなく、選択時にアイコンの色を変更することです。 主な問題は、おそらく、ナビゲーションの背景が画面全体に沿った横棒であることですが、選択した項目に応じて、その33%の色を変更したいだけです。これには恐らく回避策(?)が必要です。

答えて

0

多くの汚れた回避策は必要ありません。ちょうどあなたがあなたのBottomNavigationViewインスタンス初期化した後にこれを追加します。

navigation.setItemBackgroundResource(R.drawable.menubackground); 

をして/drawable/menubackground.xml内でこれを置く:

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@color/colorAccent" android:state_pressed="true" /> 
    <item android:drawable="@color/colorAccent" android:state_checked="true" /> 
    <item android:drawable="@color/colorPrimary" /> 
</selector> 

は次のようになります。

enter image description here

+0

、これはexaclyトンでいただき、ありがとうございます私が探していたもの!グラデーションドロワブルを挿入するのと同じ方法を適用できます。 – TeraGerard

+0

はい、どんなdrawableでも、私は信じています。 – kalabalik

関連する問題