一开始我便很困惑,TitleBar和ActionBar是什么关系?
我们知道:
ActionBar是在android3.3之后推出使用的
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
android:theme="@android:style/Theme.Holo.NoActionBar.Fullscreen"
这意味着TitleBar似乎消失了,取而代之的是ActionBar。不过,既然是ActionBar,那么就必然支持Action事件,同理可知TitleBar只显示图片和文字,不支持事件的,所以,从某种意义上来说,可以认为ActionBar是TitleBar的升级 。
对于android3.3自定义标题栏流程如下:
一、自定义标题栏颜色和高度
直接在Activity的属性中定义即可。
<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Light">
<item name="android:windowTitleBackgroundStyle">@style/settingsTitleBg</item>
<item name="android:windowTitleSize">40dp</item>
</style>
<style name="settingsTitleBg">
<item name="android:background">#0000ff</item>
</style>
定义标题栏背景色需要使用到Android:windowTitleBackgroundStyle属性,给这个属性指定一个style,这里为settingsTitleBg,然后在其中指定android:background的颜色即可。
指定标题栏高度只需要修改android:windowTitleSize的值即可。
二、自定义标题栏布局
调用如下方法即可: