修改系统action bar字体大小、粗细、颜色等样式的方法
2014-11-13 21:34
971 查看
Action bar字体的修改主要还是在xml文件中完成,对actionbar字体的修改主要思路如下:
根据application 的android:theme 属性找到他的style(方便起见,我们成为app_style)定义。
在style中找到name 为android:actionBarStyle 的item,找到android:actionBarStyle 对应的style(方便起见,我们成为actionbar_style)。
在actionbar_style中就可以看到name为android:titleTextStyle的item,再找到对应的style(我们称为titleText_style)
在titleText_style中可以发现里面有个定义了android:textSize的item,但是在这修该的话,不起作用,至于为什么,希望大家补充(PS:actionbar_style、titleText_style都是SDK中定义的,不知道是不是和这个有关)
既然上一个步骤型不同,但是我们可以在app_style所在的文件中定义一个actionbar style,然后在它的item下定义action bar的样式,具体的课参考下面的例子。
现在我们结合一个例子来说明(以android 4.4的settings应用为例):
在AndroidManifest文件中找到application中的属性
找到android:theme对应的style,Theme.Settings。
找到android:actionBarStyle对应的style(Widget.Holo.ActionBar.Solid )。
找到android:titleTextStyle对应的style(TextAppearance.Holo.Widget.ActionBar.Title)。
上面说了在TextAppearance.Holo.Widget.ActionBar.Title下面改是行不通的,可以这样做:在Theme.Settings所在的文件下定义
然后修改<item name="android:actionBarStyle"> @style/MyActionBarStyle</item >
前后效果对比图如下:
根据application 的android:theme 属性找到他的style(方便起见,我们成为app_style)定义。
在style中找到name 为android:actionBarStyle 的item,找到android:actionBarStyle 对应的style(方便起见,我们成为actionbar_style)。
在actionbar_style中就可以看到name为android:titleTextStyle的item,再找到对应的style(我们称为titleText_style)
在titleText_style中可以发现里面有个定义了android:textSize的item,但是在这修该的话,不起作用,至于为什么,希望大家补充(PS:actionbar_style、titleText_style都是SDK中定义的,不知道是不是和这个有关)
既然上一个步骤型不同,但是我们可以在app_style所在的文件中定义一个actionbar style,然后在它的item下定义action bar的样式,具体的课参考下面的例子。
现在我们结合一个例子来说明(以android 4.4的settings应用为例):
在AndroidManifest文件中找到application中的属性
[align=left] <application android:label ="@string/settings_label"[/align] [align=left] android:icon= "@mipmap/ic_launcher_settings"[/align] [align=left] android:taskAffinity= ""[/align] [align=left] android:theme= "@style/Theme.Settings"[/align] [align=left] android:hardwareAccelerated="true"[/align] [align=left] android:requiredForAllUsers="true"[/align] [align=left] android:supportsRtl= "true"[/align] [align=left] android:name= ".Screenshot">[/align] |
[align=left] <style name ="Theme.Settings" parent= "@android:style/Theme.Holo">[/align] [align=left] <item name= "@*android:preferenceHeaderPanelStyle" >@style/PreferenceHeaderPanelSinglePane </item>[/align] [align=left] <item name= "@*android:preferencePanelStyle" >@style/PreferencePanelSinglePane </item>[/align] [align=left] <item name= "@*android:preferenceListStyle" >@style/PreferenceHeaderListSinglePane </item>[/align] [align=left] <item name= "@*android:preferenceFragmentListStyle" >@style/PreferenceFragmentListSinglePane </item>[/align] [align=left] <item name= "@*android:preferenceFragmentPaddingSide" >@dimen/settings_side_margin </item>[/align] [align=left] <item name= "apnPreferenceStyle">@style/ApnPreference </item>[/align] [align=left] <item name= "ic_menu_add">@drawable/ic_menu_add_dark </item>[/align] [align=left] <item name= "ic_menu_moreoverflow">@*android:drawable/ic_menu_moreoverflow_holo_dark </item>[/align] [align=left] <item name ="ic_wps">@drawable/ic_wps_dark</ item>[/align] [align=left] <item name= "wifi_signal">@drawable/wifi_signal_dark </item>[/align] [align=left] <item name= "android:actionBarStyle">@android:style/Widget.Holo.ActionBar.Solid </item>[/align] [align=left] <item name ="@android:attr/actionBarSize"> 90dp</ item>[/align] [align=left] </style >[/align] |
[align=left] <style name ="Widget.Holo.ActionBar.Solid">[/align] [align=left] <item name= "android:titleTextStyle">@android:style/TextAppearance.Holo.Widget.ActionBar.Title </item>[/align] [align=left] <item name= "android:subtitleTextStyle">@android:style/TextAppearance.Holo.Widget.ActionBar.Subtitle </item>[/align] [align=left] <item name= "android:background">@android:drawable/ab_solid_dark_holo </item>[/align] [align=left] <item name= "android:backgroundStacked">@android:drawable/ab_stacked_solid_dark_holo </item>[/align] [align=left] <item name= "android:backgroundSplit">@android:drawable/ab_bottom_solid_dark_holo </item>[/align] [align=left] <item name= "android:divider">?android:attr/dividerVertical </item>[/align] [align=left] <item name= "android:progressBarStyle">@android:style/Widget.Holo.ProgressBar.Horizontal </item>[/align] [align=left] <item name= "android:indeterminateProgressStyle" >@android:style/Widget.Holo.ProgressBar </item>[/align] [align=left] <item name ="android:progressBarPadding"> 32dip</ item>[/align] [align=left] <item name ="android:itemPadding"> 8dip</ item>[/align] [align=left] </style >[/align] |
[align=left] <style name ="TextAppearance.Holo.Widget.ActionBar.Title"[/align] [align=left] parent= "TextAppearance.Holo.Medium">[/align] [align=left] <item name= "android:textSize">@android:dimen/action_bar_title_text_size </item>[/align] [align=left] </style >[/align] |
[align=left] <style name ="MyActionBarStyle" parent="@android:style/Widget.Holo.ActionBar.Solid" >[/align] [align=left] <item name= "android:titleTextStyle">@style/MyActionBar.TitleTextStyle </item>[/align] [align=left] </style >[/align] [align=left] [/align] [align=left] <style name ="MyActionBar.TitleTextStyle"[/align] [align=left] parent= "@android:style/TextAppearance.Holo.Widget.ActionBar.Title" >[/align] [align=left] <item name ="android:textSize"> 43sp</ item>[/align] [align=left] <item name ="android:textColor"> #FF9900</ item>[/align] [align=left] </style >[/align] |
前后效果对比图如下:
相关文章推荐
- iOS 修改SearchBar的Textfiled的Cursor游标颜色和字体样式和大小;Disable输入框
- Spinner(一)——修改系统自带Spinner字体大小和颜色完整示例
- 修改ActionBar的样式(overflow按钮图片修改,AcitonBar背景颜色,去掉ActionBar下面的阴影)
- C#读取系统字体颜色与大小的方法
- Android修改系统自带Spinner字体大小和颜色示例代码
- ios - 可以改变系统弹框字体大小以及颜色的方法
- 修改tabhost的字体样式(颜色、字体大小) (有个R.id.title的问题)
- iOS UISearchBar修改placeholder字体颜色和大小
- iOS开发之--如何修改TabBarItem的title的字体和颜色/BarButtonItem的title的字体大小和颜色/添加背景图片,并添加点击方法
- 修改NavigationBarItem的字体大小和颜色的使用方法
- 关于TextView中修改部分字体颜色、大小方法的总结
- [Flex]Flex编程注意之修改CategoryAxis的字体样式(大小、颜色、粗斜体等)
- 修改Tabhost样式和字体大小的方法
- Menu-actionBarMenu字体颜色修改
- android修改系统字体大小,使用隐藏类和方法以及怎么生成系统app使用系统权限
- 修改Tabhost样式和字体大小的方法
- [Flex]Flex编程注意之修改CategoryAxis的字体样式(大小、颜色、粗斜体等)
- 修改UINavigationBar (导航栏)上NavigationBarItem 的字体大小和颜色的使用方法
- 系统中一键改变字体大小和样式的方法
- 两种解决修改android手机设置中字体大小后系统布局混乱的方法