好的,我知道这是一个微不足道的问题,但由于某种原因它不适合我.我在其他答案中做了很多建议但是徒劳无功.我的drawable文件夹有白色图标.我甚至试图从styles.xml更改它,但这也不起作用.我在我的Lollipop设备上测试它.任何帮助将不胜感激.提前致谢.
这是我的清单文件的一部分.
<application android:allowBackup="true" android:icon="@drawable/ic_drawer" android:label="@string/app_name" > <Meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" tools:replace="android:value" /> <activity android:name=".Activity_Splash" android:label="@string/app_name" > <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <activity android:name=".Activity_test" android:launchMode="singleInstance" android:theme="@style/AppTheme.Base" android:windowSoftInputMode="stateHidden" />
最后这是我的style.xml.类似于v-21.
<style name="AppTheme.Base" parent="Theme.AppCompat.Light.NoActionBar"> <item name="android:windowContentTransitions">true</item> <item name="android:windowAllowEnterTransitionOverlap">true</item> <item name="android:windowAllowReturnTransitionOverlap">true</item> <item name="android:actionMenuTextColor">#fff</item> <item name="colorPrimary">@color/ColorPrimary</item> <item name="colorPrimaryDark">@color/ColorPrimaryDark</item> <item name="drawerArrowStyle">@style/MyDrawerArrowToggle</item> <item name="windowActionBar">false</item> <item name="colorAccent">#fff</item> <item name="android:windowSharedElementEnterTransition">@android:transition/move</item> <item name="android:windowSharedElementExitTransition">@android:transition/move</item> </style>
解决方法
您应该使用ThemeOverlay.AppCompat.Dark.ActionBar作为工具栏样式.它将colorControlNormal设置为android:textColorPrimary,黑色主题为白色.它并没有改变其他主流风格.
<android.support.v7.widget.Toolbar xmlns:app="http://schemas.android.com/apk/res-auto" > ... android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" </android.support.v7.widget.Toolbar>
同时从主要样式中删除drawerArrowStyle,不需要它.