`
yhz61010
  • 浏览: 558006 次
  • 来自: -
博客专栏
63c13ecc-ef01-31cf-984e-de461c7dfde8
libgdx 游戏开发
浏览量:12175
社区版块
存档分类
最新评论

设置 Toolbar(ActionBar) 上的按钮颜色

阅读更多
原文地址:
https://stackoverflow.com/a/29536902
https://stackoverflow.com/a/27754099

[your_layout.xml]
<android.support.v7.widget.Toolbar
    <!-- leave the theme stuff out of here -->
    style="@style/MyToolbarStyle"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">

Styles / Themes in styles.xml
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <!-- your other attributes -->
    <!-- following is used to tint the checkbox - purple for demo purpose -->
    <item name="colorControlNormal">#2196F3</item>
</style>

<style name="MyToolbarStyle">
    <item name="android:minHeight">?actionBarSize</item>
    <item name="android:background">?colorPrimary</item>
    <item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
    <item name="theme">@style/MyToolbarTheme</item>
</style>

<style name="MyToolbarTheme">
    <!-- Used to tint the back arrow, menu and spinner arrow -->
    <item name="colorControlNormal">#FFF</item>
</style>

Result

Note: I made the checkbox purple for demo purpose

-----------------------------------------------------------
Change arrow color of Spinner

1) In styles.xml, add the following style:
<style name="ActionBarThemeOverlay" parent="">
    <item name="android:textColorPrimary">#ffffff</item>
    <item name="colorControlNormal">#ffffff</item>
    <item name="colorControlHighlight">#ff33b5e5</item>
</style>

<style name="Widget.MyTheme.HeaderBar.Spinner" parent="Widget.AppCompat.Light.Spinner.DropDown.ActionBar">
    <item name="android:theme">@style/ActionBarThemeOverlay</item>
</style>

2) In the layout, where you use the Spinner (in your case with Toolbar), add the style to your spinner:
<Spinner
    xmlns:android="http://schemas.android.com/apk/res/android"
         android:id="@+id/my_spinner"
         style="@style/Widget.MyTheme.HeaderBar.Spinner"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content" />
分享到:
评论

相关推荐

    Android自定义ActionBar示例

    1. **使用Theme**: 在AndroidManifest.xml中为应用或特定Activity设置自定义主题,可以改变ActionBar的颜色、背景图片等属性。例如,可以定义一个主题并在`res/values/styles.xml`中设置`...

    android actionbar简单实例

    2. **在Activity中设置Toolbar为ActionBar**:在MainActivity.java中,找到Toolbar并设置为ActionBar: ```java Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ``` 3. **显示返回...

    比ActionBar更优秀的ToolBar使用实例

    - **设置ToolBar**:在Activity的Java代码中,通过`setSupportActionBar()`方法将ToolBar设置为ActionBar的替代品。 - **自定义ToolBar**:可以通过`setTitle()`, `setSubtitle()`, `setDisplayOptions()`等方法来...

    DrawerLayout + Toolbar 与主题theme 颜色设置

    `ActionBarDemo`可能是项目中的一个示例,它演示了如何将`Toolbar`与`DrawerLayout`结合使用,并展示了如何在实际应用中设置主题颜色。通过这个示例,开发者可以更深入地理解这些组件和主题颜色设置的工作原理,并将...

    仿微信底部导航加右上角actionBar的实现

    在Android应用开发中,创建一个类似微信的底部导航栏(TabHost)加上右上角的ActionBar功能是一项常见的需求。这个实现通常涉及到多个组件和技术的综合运用,包括布局设计、自定义视图、事件监听以及对Android SDK ...

    actionbar 入门儿 demo

    总结,学习和掌握ActionBar的使用,包括基本设置、自定义、添加操作按钮、处理点击事件,以及使用Toolbar进行拓展,是提升Android应用用户体验的关键步骤。在实际开发中,可以根据需求灵活运用这些技巧,让应用的...

    ActionBar示例

    - 在Activity的Java或Kotlin代码中,通过`setSupportActionBar()`方法将Toolbar设置为ActionBar。 4. **添加动作按钮** - 使用`menu.xml`文件定义菜单项,每个`&lt;item&gt;`标签代表一个动作按钮。 - 在Activity的`...

    ActionBar详解

    2. **XML布局**:在activity的布局XML文件中,使用`&lt;androidx.appcompat.widget.Toolbar&gt;`作为父视图来创建一个自定义的Toolbar,然后在Activity中设置这个Toolbar为ActionBar。 3. **代码实现**:在Activity的Java...

    Android ToolBar使用图标、菜单事件示例

    在Android应用开发中,`ToolBar`是Android支持库提供的一种可自定义的顶部导航组件,它取代了早期版本中的`ActionBar`,...在实际开发中,还可以根据需求进行更多自定义,比如改变`ToolBar`的颜色、添加下拉菜单等。

    Android ActionBar学习源代码

    5. **使用Navigation Drawer**:ActionBar上的三横线图标可以触发侧滑出的Navigation Drawer,通过`ActionBarDrawerToggle`类和`DrawerLayout`进行关联和设置。 6. **Action Bar Sherlock库**:对于支持更低API级别...

    Android ActionBar 自定义布局

    在自定义ActionBar时,你还可以调整许多其他属性,如背景颜色、字体样式、按钮行为等。例如,通过`setDisplayOptions()`方法可以控制ActionBar是否显示Home图标、标题、定制视图等。此外,还可以使用`setTitle()`、`...

    actionbar练习

    - 在Java/Kotlin代码中设置:通过调用`setSupportActionBar(Toolbar)`方法将Toolbar设置为ActionBar。 - 创建菜单资源:在`res/menu`目录下创建XML文件定义菜单项。 - 处理菜单事件:重写`onOptionsItemSelected...

    ActionBar小例子

    在Activity的Java代码中,还可以通过调用 `getSupportActionBar()` 或 `getActionBar()` 方法获取`ActionBar`实例,进一步进行动态设置,如添加按钮、改变标题等: ```java ActionBar actionBar = ...

    ActionBar渐变

    要实现这一效果,我们需要结合ScrollView或RecyclerView的滚动事件,根据滚动距离动态调整颜色,并将新颜色应用到ActionBar上。 在提供的Demo文件中,可能包含了实现这个效果的代码示例,包括如何设置渐变、监听...

    ActionBar定制

    例如,可以通过以下代码使ActionBar背景变为特定颜色: ```xml &lt;item name="android:actionBarStyle"&gt;@style/MyActionBar &lt;style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar"&gt; ...

    带有编辑框和返回箭头的actionbar

    2. 在代码中获取Toolbar实例,并将其设置为ActionBar的替代品。 3. 创建一个搜索View(SearchView)并将其添加到Toolbar中。这可以通过MenuItem的`setActionView()`方法实现。 4. 配置SearchView,如监听搜索查询的...

    Android控件ActionBar浅析及适配2.x的方法介绍

    3. Toolbar:使用AppCompatActivity时,通过设置Toolbar作为ActionBar,这样在低版本系统上也能实现类似的功能。 四、自定义ActionBar 1. 资源文件:在res/layout下创建一个新的XML布局文件,定义自己的Toolbar...

    Android-带有传统标题栏ActionBar标题居中的TitleActivity

    - 使用`setSupportActionBar()`方法将Toolbar设置为ActionBar。 - 调用`getSupportActionBar().setDisplayOptions()`来设置ActionBar的显示选项,这里我们需要`DISPLAY_SHOW_CUSTOM`和`DISPLAY_SHOW_HOME`,以便...

    Android-TransparentToolBar一个简单随着滚动控件滚动不断改变颜色透明度的ToolBar

    在Android应用开发中,ToolBar作为一个重要的组件,常用于展示应用的标题、操作按钮等,而`Android-TransparentToolBar`则是对这一组件的扩展,它提供了一个动态效果:随着用户滚动屏幕,ToolBar的颜色会逐渐变化,...

    ToolBar的Demo实战

    3. 设置ToolBar:在Activity的onCreate()方法中,获取Toolbar并将其设置为ActionBar的替代品: ```java Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ``` 如果你需要自定义标题...

Global site tag (gtag.js) - Google Analytics