如何自定义Action Bar字幕字体?
How to customize the Action Bar subtitle Font?
我创建了一个 ActionBar (android.support.v7.widget.Toolbar
),如下所示。
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize">
</android.support.v7.widget.Toolbar>
在我的ActionBar中,除了标题,我还有副标题。但是我想自定义字幕。在自定义中,我指的是字体大小、颜色和字体。
我尝试了各种主题和样式,但仍然没有成功。
如果有一个简单的完整示例说明如何做到这一点,那将非常有帮助。谢谢!
如果您的布局文件中还没有此命名空间属性,请添加它:
xmlns:app="http://schemas.android.com/apk/res-auto"
像这样更新布局文件中的工具栏属性:
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:titleTextAppearance="@style/ToolbarTitleAppearance"
app:subtitleTextAppearance="@style/ToolbarSubtitleAppearance"
android:minHeight="?attr/actionBarSize">
</android.support.v7.widget.Toolbar>
添加如下样式:
<style name="ToolbarTitleAppearance" parent="@style/TextAppearance.Widget.AppCompat.Toolbar.Title">
<item name="android:textSize">20dp</item>
<!-- include other attributes you want to change: textColor, textStyle, etc -->
</style>
<style name="ToolbarSubtitleAppearance" parent="@style/TextAppearance.Widget.AppCompat.Toolbar.Subtitle">
<item name="android:textSize">14dp</item>
</style>
对该答案的评论讨论了 textSize
的单位应该是 dp
还是 sp
。当我最初写这个答案时,我查看了 Android 源文件,发现使用了 dp
。我建议坚持下去。正如 FrancescoDonzello 在他的评论中解释的那样,工具栏的大小是固定的,并且与其他小部件不同,它不会扩展以包含因更改 phone 设置而放大的文本。
我创建了一个 ActionBar (android.support.v7.widget.Toolbar
),如下所示。
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minHeight="?attr/actionBarSize">
</android.support.v7.widget.Toolbar>
在我的ActionBar中,除了标题,我还有副标题。但是我想自定义字幕。在自定义中,我指的是字体大小、颜色和字体。
我尝试了各种主题和样式,但仍然没有成功。
如果有一个简单的完整示例说明如何做到这一点,那将非常有帮助。谢谢!
如果您的布局文件中还没有此命名空间属性,请添加它:
xmlns:app="http://schemas.android.com/apk/res-auto"
像这样更新布局文件中的工具栏属性:
<android.support.v7.widget.Toolbar
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/myToolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
app:titleTextAppearance="@style/ToolbarTitleAppearance"
app:subtitleTextAppearance="@style/ToolbarSubtitleAppearance"
android:minHeight="?attr/actionBarSize">
</android.support.v7.widget.Toolbar>
添加如下样式:
<style name="ToolbarTitleAppearance" parent="@style/TextAppearance.Widget.AppCompat.Toolbar.Title">
<item name="android:textSize">20dp</item>
<!-- include other attributes you want to change: textColor, textStyle, etc -->
</style>
<style name="ToolbarSubtitleAppearance" parent="@style/TextAppearance.Widget.AppCompat.Toolbar.Subtitle">
<item name="android:textSize">14dp</item>
</style>
对该答案的评论讨论了 textSize
的单位应该是 dp
还是 sp
。当我最初写这个答案时,我查看了 Android 源文件,发现使用了 dp
。我建议坚持下去。正如 FrancescoDonzello 在他的评论中解释的那样,工具栏的大小是固定的,并且与其他小部件不同,它不会扩展以包含因更改 phone 设置而放大的文本。