如何更改动作栏切换颜色?-安卓

The*_*heQ 0 android android-layout android-xml android-actionbar android-styles

如何更改操作栏切换按钮的颜色?

在此处输入图片说明

这是我的Java操作栏代码:

  //Navigation view and Drawer layout
        drawerlayout = (DrawerLayout) findViewById(R.id.main_ND);
        actionBarDrawerToggle = new ActionBarDrawerToggle(this,drawerlayout,0,0);
        navigationView = (NavigationView) findViewById(R.id.main_NV);
        navigationView.setItemIconTintList(null);
        View headerView = navigationView.getHeaderView(0);
        nD_image = (ImageView) headerView.findViewById(R.id.nd_image);
        Glide.with(getBaseContext()).load(R.drawable.my_paper).centerCrop().into(nD_image);
        setNavigationView();
        drawerlayout.addDrawerListener(actionBarDrawerToggle);
        actionBarDrawerToggle.syncState();
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setHomeButtonEnabled(true);
}


 @Override
    public boolean onOptionsItemSelected(MenuItem item)
    {
        if(actionBarDrawerToggle.onOptionsItemSelected(item))
        {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
Run Code Online (Sandbox Code Playgroud)

以我的风格

  <style name="my_theme" parent="Theme.AppCompat.Light.NoActionBar">
        <!-- Customize your theme here. -->
        <item name="colorPrimaryDark">@color/salmonDark</item>
        <item name="colorPrimary">@color/salmon_main</item>
        <item name="colorAccent">@color/black</item>
        <item name="android:actionMenuTextColor">@color/white</item><!-- green was: #8BC34A -->
        <item name="android:actionMenuTextAppearance">@style/actionBarTextSize</item>
    </style>
Run Code Online (Sandbox Code Playgroud)

然后在我的清单上

 <activity android:name=".Main.Main"
            android:screenOrientation="portrait"
            android:theme="@style/zivit_theme"/>
Run Code Online (Sandbox Code Playgroud)

我不太确定如何更改颜色或在哪里进行更改。我希望有人可以张贴一些分步过程的示例代码(或执行此操作的那神奇的一行代码),谢谢!

raf*_*007 5

尝试这个:

在基本主题中:为操作栏添加一个项目

 <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="drawerArrowStyle">@style/MyDrawerArrowToggle</item>

    <!-- Support library compatibility -->
    <item name="actionBarStyle">@style/MyActionBar</item>
</style>
Run Code Online (Sandbox Code Playgroud)

自定义操作栏主题:

<style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar">
    <item name="android:titleTextStyle">@style/MyTitleTextStyle</item>
    <item name="android:background">@color/background</item>

     <!-- Support library compatibility -->
     <item name="titleTextStyle">@style/TitleTextStyle</item>
     <item name="background">@color/background</item>
</style>
Run Code Online (Sandbox Code Playgroud)

您还可以修改操作栏文本颜色:

<style name="MyTitleTextStyle" parent="@style/TextAppearance.AppCompat.Widget.ActionBar.Title">
    <item name="android:textColor">@color/foreground</item>
</style>
Run Code Online (Sandbox Code Playgroud)

切换按钮样式:

 <style name="MyDrawerArrowToggle" parent="Widget.AppCompat.DrawerArrowToggle">
    <item name="color">@color/foreground</item>
</style>
Run Code Online (Sandbox Code Playgroud)