自定义ActionBar标题与菜单中的文字样式
自定义标题文字样式
标题样式是ActionBar样式的一部分,所以要先定义ActionBar的样式
<style name="AppTheme" parent="AppBaseTheme"> <item name="android:actionBarStyle">@style/CustomActionBar</item> </style>
然后在ActionBar的样式中通过android:titleTextStyle定义标题的样式
<style name="CustomActionBar" parent="@android:style/Widget.DeviceDefault.ActionBar"> <item name="android:titleTextStyle">@style/ActionBarTitle</item> </style> <style name="ActionBarTitle" parent="@android:style/TextAppearance.Holo.Large"> <item name="android:textColor">@android:color/holo_blue_bright</item> <item name="android:textSize">20sp</item> </style>
自定义副标题文字样式
副标题样式同样是ActionBar样式的一部分,在ActionBar模式中通过android:subtitleTextStyle指定
<style name="CustomActionBar" parent="@android:style/Widget.DeviceDefault.ActionBar"> <item name="android:titleTextStyle">@style/ActionBarTitle</item> <item name="android:subtitleTextStyle">@style/ActionBarSubtitle</item> </style> <style name="ActionBarSubtitle" parent="@android:style/TextAppearance.Holo.Medium"> <item name="android:textColor">@android:color/holo_blue_light</item> <item name="android:textSize">16sp</item> </style>
自定义菜单文字样式
菜单文字的自定义直接通过Activity的Theme指定,而不是通过ActionBar的样式
<style name="AppTheme" parent="AppBaseTheme"> <item name="android:actionBarStyle">@style/CustomActionBar</item> <item name="android:actionMenuTextAppearance">@style/ActionBarTitle</item> <item name="android:actionMenuTextColor">@android:color/holo_blue_light</item> </style> <style name="ActionBarMenu" parent="@android:style/TextAppearance.Holo.Large"> <item name="android:textColor">@android:color/holo_blue_light</item> <item name="android:textSize">20sp</item> </style>
有一点要注意,虽然通过android:actionMenuTextApperance指定的是TextApperance,但是文字的颜色要通过android:actionMenuTextColor单独指定
系统使用的默认样式
<style name="TextAppearance.Holo.Widget.ActionBar.Title" parent="TextAppearance.Holo.Medium"> <item name="android:textSize">@android:dimen/action_bar_title_text_size</item> </style> <style name="TextAppearance.Holo.Widget.ActionBar.Subtitle" parent="TextAppearance.Holo.Small"> <item name="android:textSize">@android:dimen/action_bar_subtitle_text_size</item> </style> <style name="TextAppearance.Holo.Widget.ActionBar.Menu" parent="TextAppearance.Holo.Small"> <item name="android:textSize">12sp</item> <item name="android:textStyle">bold</item> <item name="android:textColor">?android:attr/actionMenuTextColor</item> <item name="android:textAllCaps">@android:bool/config_actionMenuItemAllCaps</item> </style>
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 单线程的Redis速度为什么快?
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库