原文地址:
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" />
分享到:
相关推荐
1. **使用Theme**: 在AndroidManifest.xml中为应用或特定Activity设置自定义主题,可以改变ActionBar的颜色、背景图片等属性。例如,可以定义一个主题并在`res/values/styles.xml`中设置`...
2. **在Activity中设置Toolbar为ActionBar**:在MainActivity.java中,找到Toolbar并设置为ActionBar: ```java Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ``` 3. **显示返回...
- **设置ToolBar**:在Activity的Java代码中,通过`setSupportActionBar()`方法将ToolBar设置为ActionBar的替代品。 - **自定义ToolBar**:可以通过`setTitle()`, `setSubtitle()`, `setDisplayOptions()`等方法来...
`ActionBarDemo`可能是项目中的一个示例,它演示了如何将`Toolbar`与`DrawerLayout`结合使用,并展示了如何在实际应用中设置主题颜色。通过这个示例,开发者可以更深入地理解这些组件和主题颜色设置的工作原理,并将...
在Android应用开发中,创建一个类似微信的底部导航栏(TabHost)加上右上角的ActionBar功能是一项常见的需求。这个实现通常涉及到多个组件和技术的综合运用,包括布局设计、自定义视图、事件监听以及对Android SDK ...
总结,学习和掌握ActionBar的使用,包括基本设置、自定义、添加操作按钮、处理点击事件,以及使用Toolbar进行拓展,是提升Android应用用户体验的关键步骤。在实际开发中,可以根据需求灵活运用这些技巧,让应用的...
- 在Activity的Java或Kotlin代码中,通过`setSupportActionBar()`方法将Toolbar设置为ActionBar。 4. **添加动作按钮** - 使用`menu.xml`文件定义菜单项,每个`<item>`标签代表一个动作按钮。 - 在Activity的`...
2. **XML布局**:在activity的布局XML文件中,使用`<androidx.appcompat.widget.Toolbar>`作为父视图来创建一个自定义的Toolbar,然后在Activity中设置这个Toolbar为ActionBar。 3. **代码实现**:在Activity的Java...
在Android应用开发中,`ToolBar`是Android支持库提供的一种可自定义的顶部导航组件,它取代了早期版本中的`ActionBar`,...在实际开发中,还可以根据需求进行更多自定义,比如改变`ToolBar`的颜色、添加下拉菜单等。
5. **使用Navigation Drawer**:ActionBar上的三横线图标可以触发侧滑出的Navigation Drawer,通过`ActionBarDrawerToggle`类和`DrawerLayout`进行关联和设置。 6. **Action Bar Sherlock库**:对于支持更低API级别...
在自定义ActionBar时,你还可以调整许多其他属性,如背景颜色、字体样式、按钮行为等。例如,通过`setDisplayOptions()`方法可以控制ActionBar是否显示Home图标、标题、定制视图等。此外,还可以使用`setTitle()`、`...
- 在Java/Kotlin代码中设置:通过调用`setSupportActionBar(Toolbar)`方法将Toolbar设置为ActionBar。 - 创建菜单资源:在`res/menu`目录下创建XML文件定义菜单项。 - 处理菜单事件:重写`onOptionsItemSelected...
在Activity的Java代码中,还可以通过调用 `getSupportActionBar()` 或 `getActionBar()` 方法获取`ActionBar`实例,进一步进行动态设置,如添加按钮、改变标题等: ```java ActionBar actionBar = ...
要实现这一效果,我们需要结合ScrollView或RecyclerView的滚动事件,根据滚动距离动态调整颜色,并将新颜色应用到ActionBar上。 在提供的Demo文件中,可能包含了实现这个效果的代码示例,包括如何设置渐变、监听...
例如,可以通过以下代码使ActionBar背景变为特定颜色: ```xml <item name="android:actionBarStyle">@style/MyActionBar <style name="MyActionBar" parent="@style/Widget.AppCompat.ActionBar"> ...
2. 在代码中获取Toolbar实例,并将其设置为ActionBar的替代品。 3. 创建一个搜索View(SearchView)并将其添加到Toolbar中。这可以通过MenuItem的`setActionView()`方法实现。 4. 配置SearchView,如监听搜索查询的...
3. Toolbar:使用AppCompatActivity时,通过设置Toolbar作为ActionBar,这样在低版本系统上也能实现类似的功能。 四、自定义ActionBar 1. 资源文件:在res/layout下创建一个新的XML布局文件,定义自己的Toolbar...
- 使用`setSupportActionBar()`方法将Toolbar设置为ActionBar。 - 调用`getSupportActionBar().setDisplayOptions()`来设置ActionBar的显示选项,这里我们需要`DISPLAY_SHOW_CUSTOM`和`DISPLAY_SHOW_HOME`,以便...
在Android应用开发中,ToolBar作为一个重要的组件,常用于展示应用的标题、操作按钮等,而`Android-TransparentToolBar`则是对这一组件的扩展,它提供了一个动态效果:随着用户滚动屏幕,ToolBar的颜色会逐渐变化,...
3. 设置ToolBar:在Activity的onCreate()方法中,获取Toolbar并将其设置为ActionBar的替代品: ```java Toolbar toolbar = findViewById(R.id.toolbar); setSupportActionBar(toolbar); ``` 如果你需要自定义标题...