先推荐一个actionbar样式以及图标定制网站吧:http://android-ui-utils.googlecode.com/hg/asset-studio/dist/index.html
1.actionbar背景色的问题
1
2
3
4
5
6
7
8
9
10
11
|
<
style
name
=
"AppTheme"
parent
=
"AppBaseTheme"
>
<
item
name
=
"android:actionBarStyle"
>@style/MyActionBar</
item
>
</
style
>
<
style
name
=
"MyActionBar"
parent
=
"@android:style/Widget.DeviceDefault.Light.ActionBar"
>
<
item
name
=
"android:background"
>#555555</
item
> 标题栏颜色
<
item
name
=
"android:backgroundStacked"
>#BBBBBB</
item
> 导航栏颜色
<
item
name
=
"android:backgroundSplit"
>#000000</
item
> 底部操作栏颜色
</
style
>
</
resources
>
|
我原以为一个颜色属性控制所有的actionbar的颜色,不想是三个属性控制的,不过需要14版本的支持。
2.actionbar底部按钮间距的问题
android:actionViewClass属性来分别指定一个布局资源或要使用的可视构件类。例如
1
2
3
4
5
6
7
8
|
<?
xml
version
=
"1.0"
encoding
=
"utf-8"
?>
<
item
android:id
=
"@+id/menu_search"
android:title
=
"@string/menu_search"
android:icon
=
"@drawable/ic_menu_search"
android:showAsAction
=
"ifRoom|collapseActionView"
android:actionViewClass
=
"android.widget.SearchView"
/>
</
menu
>
|
此时底部操作栏会将两边的按钮强制靠边即尽量增大按钮间距,这样不方便案首操作。明显的例子就是在魅族的flyme的smartbar上就没法中间显示。
去掉左侧图标:(http://www.eoeandroid.com/thread-542959-1-1.html)
自定义主题样式: <style name="MyActionBar" parent="@android:style/Widget.Holo.ActionBar"> <item name="android:displayOptions">showTitle</item> </style> 这样使用即可,默认的是 <item name="android:displayOptions">useLogo|showHome|showTitle</item> |