工具栏后退箭头在较高的Android版本4.0.3是白色但工具栏后退箭头在Android版本4.0.3是黑色的。我想在所有Android版本中显示白色后箭头。
在java中
toolbar = (Toolbar) findViewById(R.id.toolbar_title);
setSupportActionBar(toolbar);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
style.xml中的
<style name="AppTheme" parent="MaterialDrawerTheme.Light.DarkToolbar.ActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:textColorPrimary">@android:color/white</item>
<item name="drawerArrowStyle">@style/DrawerArrowStyle</item>
<item name="android:windowContentOverlay">@null</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="colorControlNormal">@android:color/white</item>
<item name="actionBarTheme">@style/AppTheme.NoActionBar</item>
</style>
styles.xml(v21)
<style name="AppTheme.NoActionBar">
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
<item name="android:windowDrawsSystemBarBackgrounds">true</item>
<item name="android:statusBarColor">@android:color/transparent</item>
</style>
activity.xml
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/colorPrimary"
android:minHeight="?android:attr/actionBarSize"
android:popupTheme="@android:style/ThemeOverlay.Material.Light"/>
答案 0 :(得分:1)
旧设备上没有类似"@android:style/ThemeOverlay.Material.Light"
的样式(5.0之前版本)。主要父母应该是"@style/Theme.AppCompat.Light.DarkActionBar"
(或者根本没有ActionBar
?最后一段)
此外,对于Toolbar
:
app:popupTheme="@style/AppTheme"
app:theme="@style/ActionBarTheme"
<style name="ActionBarTheme" parent="@style/ThemeOverlay.AppCompat.ActionBar">
<item name="android:textColorSecondary">@android:color/white</item>
<item name="android:colorControlNormal">@android:color/white</item>
<item name="colorControlNormal">@android:color/white</item>
</style>
另外:您可以在所有操作系统版本中使用Toolbar
,您不需要创建不带ActionBar
的分隔样式(假设您以编程方式设置Toolbar
)以用于较新的OS版本< / p>
答案 1 :(得分:1)
您可以将后轴颜色设置为
final Drawable upArrow= ContextCompat.getDrawable(this,R.drawable.abc_ic_ab_back_mtrl_am_alpha);
if (upArrow != null) {
upArrow.setColorFilter(ContextCompat.getColor(BuyRentMainActivity.this, R.color.white), PorterDuff.Mode.SRC_ATOP);
getSupportActionBar().setHomeAsUpIndicator(upArrow);
}
getSupportActionBar().setDisplayHomeAsUpEnabled(true);