这是一个奇怪的问题,仍然无法找出原因?设置如下所示的自定义工具栏,
<android.support.v7.widget.Toolbar
....>
<include android:id="@+id/custom_toolbar" layout="@layout/custom_toolbar"/>
</android.support.v7.widget.Toolbar>
和自定义工具栏中的textview
<TextView
.....
android:text="@string/search_by_title_or_artist"
android:textColor="@color/text_shadow_white"
.... />
和主题风格
<style name="AppTheme" parent="BaseTheme">
.....
<item name="android:textColorPrimary">@color/material_gray_900</item>
.....
</style>
最终是BaseTheme
<style name="BaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="android:windowLightStatusBar" tools:targetApi="23">true</item>
<item name="windowActionModeOverlay">true</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
<item name="android:windowContentTransitions">true</item>
</style>
问题是自定义工具栏中的文本颜色不会被android:textColor
attribute覆盖,无论设置任何颜色。它只受主题风格的android:textColorPrimary
影响。但是android:textColor
会覆盖不在列表中的自定义工具栏中的其他文本。
请告诉我这有什么问题以及如何解决。
首先像这样定制你的style.xml
: -
<style name="AppTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />
然后申请到您的自定义toolbar
: -
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="?attr/colorPrimary"
app:popupTheme="@style/AppTheme.PopupOverlay" >
<TextView
.....
android:text="@string/search_by_title_or_artist"
android:textColor="@color/text_shadow_white"
....
/>
</android.support.v7.widget.Toolbar>
试试这可能会对你有所帮助。
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
android:background="@drawable/bg_transition"
app:popupTheme="@style/ThemeOverlay.AppCompat.Light"/>
试试这个
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_height="wrap_content">
<TextView android:layout_width="wrap_content"
android:text="Search..."
android:textColor="@color/colorPrimary"
android:layout_height="wrap_content"/>
</android.support.v7.widget.Toolbar>