android - 更改工具栏的后退箭头颜色-LMLPHP

你好在上图中,您可以看到一个后退箭头和一个(一部分)标题。我使用所附的.xml代码更改了标题颜色。但我也想将后退箭头也涂成白色。

我在互联网上阅读了一些答案,但是对于这样一个简单的问题,它们看起来太复杂了。

有什么简单的原因吗?

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="fill_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/colorPrimary"
        android:minHeight="?attr/actionBarSize"
        app:titleTextColor="@android:color/white"/>



import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.Toolbar;
//...

public class LoginActivity extends AppCompatActivity {
    protected void onCreate(Bundle savedInstanceState) {

        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);
        ActionBar actionBar = getSupportActionBar();
        actionBar.setDisplayHomeAsUpEnabled(true);
      //...
    }
    //...
}

最佳答案

您可以在Toolbar中覆盖主题。
带有 Material 成分主题:

  <com.google.android.material.appbar.MaterialToolbar
        style="@style/Widget.MaterialComponents.Toolbar.Primary"
        android:theme="@style/MyThemeOverlay_Toolbar"
        ..>

与:
  <style name="MyThemeOverlay_Toolbar2" parent="ThemeOverlay.MaterialComponents.Toolbar.Primary">

    <!-- This attributes is used by navigation icon and overflow icon -->
    <item name="colorOnPrimary">@color/secondaryColor</item>
  </style>

使用 AppCompat主题:
<android.support.v7.widget.Toolbar
  android:theme="@style/myToolbarTheme"
  ...
>

然后,您可以在主题中定义colorControlNormal属性:
   <style name=""  parent="ThemeOverlay.AppCompat.Dark.ActionBar">
      ....
      <item name="colorControlNormal">@color/myColor</item>
   </style>

07-25 23:19