Как я могу изменить цвет элементов на панели инструментов - PullRequest
2 голосов
/ 30 мая 2019

У меня есть панель инструментов, я хочу изменить фон на черный, но по умолчанию цвет элементов черный, и я хочу изменить их цвет на серый, как я могу это сделать? Спасибо большое: Мое изображение о Панели инструментов

А это мой toolbar.xml

<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#2196F3"
android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar">

My styles.xml

<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- Customize your theme here. -->
    <item name="colorPrimary">@color/colorPrimary</item>
    <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
    <item name="colorAccent">@color/colorAccent</item>
</style>

Ответы [ 2 ]

0 голосов
/ 30 мая 2019

Измените атрибут оттенка значка.

Через xml:

<item android:id="@+id/slash_toolbar" 
android:title="" 
android:icon="@drawable/ic_voice" 
app:showAsAction="always" 
android:tint="@android:color/white"/>

Через код :

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    getMenuInflater().inflate(R.menu.menu_main, menu);

    for(int i = 0; i < menu.size(); i++){
        Drawable drawable = menu.getItem(i).getIcon();
        if(drawable != null) {
            drawable.mutate();
            drawable.setColorFilter(getResources().getColor(R.color.textColorPrimary), PorterDuff.Mode.SRC_ATOP);
        }
    }

    return true;
}

Чтобы изменить цвет трех точек , поместите его в style.xml в AppTheme:

<!-- android:textColorSecondary is the color of the menu overflow icon (three vertical dots) -->
<item name="android:textColorSecondary">@color/white</item>
0 голосов
/ 30 мая 2019

При создании иконки или векторного актива вы можете выбрать цвет

enter image description here

Нажмите на селектор цвета.

Если вы хотите изменить цвет в коде, то добавьте app:iconTint="@color/yourcolor" в ваш MenuItem для изменения цвета значка.

<item
android:icon="@drawable/ic_share_white_24dp"
android:id="@+id/action_share"
android:title="@string/action_share"
android:orderInCategory="200"
app:iconTint="@color/yourcolor"
app:showAsAction="ifRoom"
app:actionProviderClass="android.support.v7.widget.ShareActionProvider"/>

Чтобы изменить цвет значка 3 точки, попробуйте добавить его в styles.xml

<style name="YourCustomTheme.OverFlow">
    <item name="android:src">@drawable/my_overflow_image</item>
</style>
...