Как мне изменить цвет меню на пользовательской панели инструментов?

#android #xml #android-studio #android-layout #android-menu

#Android #xml #android-studio #android-макет #android-меню

Вопрос:

У меня есть домашняя страница, где я создал пользовательскую панель инструментов, и теперь мне нужно добавить к ней пункты меню. До сих пор я добивался успеха, и у меня есть search значок в app:showAsAction="always" режиме (который белый), но когда я добавляю что-либо в app:showAsAction="never" режиме, индикатор меню (три точки) отображается черным цветом, но я хочу, чтобы они были белыми.

AndroidManifest.xml

 <activity
        android:name=".HomePage"
        android:launchMode="singleTask" />
  

actvity_homepage.xml

 <com.google.android.material.appbar.AppBarLayout
    android:id="@ id/appBarLayout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    app:layout_constraintBottom_toBottomOf="parent"
    app:layout_constraintEnd_toEndOf="parent"
    app:layout_constraintVertical_bias="0"
    app:layout_constraintStart_toStartOf="parent"
    app:layout_constraintTop_toTopOf="parent">

    <androidx.appcompat.widget.Toolbar
        android:id="@ id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?actionBarSize"
        app:titleTextColor="#ffffff"
        style="@style/ToolbarTheme"
        android:textAlignment="textStart"
        android:background="#2B772E"
        app:popupTheme="@style/ThemeOverlay.AppCompat.Light" />
  

homepage_menu.xml

 <?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">

<item android:id="@ id/logoutmenu"
    android:title= "Log Out"
    android:icon="@drawable/logout"
    app:itemIconTint = "#ffffff"
    app:showAsAction="never"/>
<item
    android:id="@ id/search"
    android:icon="@drawable/search"
    app:showAsAction="always"
    android:title="Hello" />
</menu>
  

Это результат

Ответ №1:

(первый способ) в вашем стиле :

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    ...
    <item name="actionOverflowButtonStyle">@style/MyOverflowButtonStyle</item>
</style>

<style name="MyOverflowButtonStyle" parent="Widget.AppCompat.ActionButton.Overflow">
    <item name="android:tint">#62ff00</item>
</style>
  

Или вы можете изменить его с помощью стиля панели инструментов следующим образом:

 <android.support.v7.widget.Toolbar
  ...
  theme="@style/MyToolbarStyle"
/>
  

и в вашем стиле:

 <style name="MyToolbarStyle" parent="ThemeOverlay.AppCompat.ActionBar">
  <item name="android:textColorSecondary">#333333</item>
</style>
  

Комментарии:

1. Первый метод сработал, но как-то не сработал второй. В любом случае, большое спасибо !! 🙂