2017-06-28 13 views
0

私はメニュー付きのアクションドロワーを使用しています。アイコンは、次のスクリーンショットのように黒で表示されます:Android Wear - アクションドロワーアイコンの色

enter image description here

私はかなり設計ガイドラインと同様に、これらのアイコンの色を変更しようとしています:

Check guidelines: https://www.google.com/design/spec-wear/components/action-drawer.html#action-drawer-usage

をしかし、私はそれを行う場所やスタイル属性を見つけることができません。

+0

これは可能ではないと考えてください。代わりにアイコン全体を変更しようとしましたか? – noogui

+0

私はxmlのアイコン自体の色を変更しました(ベクトル描画可能です)。なし –

答えて

1

CircledImageViewを使用している場合は、setImageTint(int tint)を使用してアイコンの色合いを直接ビューに設定できます。

あなたがあなたのアイコンリソースからDrawableのを作成し、それに色合いを適用し、ビューに設定する必要があり、伝統的なImageViewの使用している場合:

Drawable iconDrawable = mContext.getResources().getDrawable(R.drawable.icon, mContext.getTheme()); 
iconDrawable.setTint(mContext.getColor(R.color.bg_color, mContext.getTheme())); 
iconView.setImageDrawable(iconDrawable); 

EDIT:アクセスするにはそれが作成されますときにこのような何かを行うことができ、メニュー内のアイコン:

for(int i = 0; i < menu.size(); i++) { 
    Drawable iconDrawable = menu.getItem(i).getIcon(); 
    iconDrawable.setTint(mContext.getColor(R.color.bg_color, mContext.getTheme())); 
} 
+0

これはメニューであり、カスタム表示ではありません。メニューXMLからロードされます。 –

+0

私の答えを更新しました。これでも解決しない場合は、メニューのXMLの外観とコードの作成方法を示すコードを投稿してください。 – TofferJ

0

彼らはそれを無効にする/色を変更するオプションを与えることなくアクション引き出し項目のレイアウトを変更しました。

V23/action_drawer_item_view.xml

<ImageView 
     android:id="@+id/wearable_support_action_drawer_item_icon" 
     android:layout_width="@dimen/action_drawer_item_icon_size" 
     android:layout_height="@dimen/action_drawer_item_icon_size" 
     android:layout_gravity="center_vertical" 
     android:background="@drawable/action_item_icon_background" 
     **android:tint="?android:attr/colorBackground"** 
     android:padding="@dimen/action_drawer_item_icon_padding" 
     android:scaleType="fitCenter" 
     tools:ignore="ContentDescription" /> 

アダプタへのアクセス決してありませんので、色を変更することはできません。

関連する問題