通过CollapsingToolbarLayout的以下属性可以设置标题折叠和展开时title的样式:
app:collapsedTitleGravity="center_horizontal" // 折叠时title的对齐方式
app:collapsedTitleTextAppearance="@style/ToolbarCollapsedTitle" //折叠时title文字的样式
app:expandedTitleGravity="center_horizontal" //展开时title的对齐方式
app:expandedTitleTextAppearance="@style/ToolbarExpandedTitle" //展开时title文字的样式
但是这样有一个问题,细看Title的文字并没有真正的居中,网上给出的办法一般有两个:
1、Toolbar添加一个子view
2、给Toolbar设置属性
app:contentInsetStart="0dp"
app:contentInsetLeft="0dp"
但是这样设置后发现还是没有精确居中,查看Toolbar样式:
<style name="Base.Widget.AppCompat.Toolbar" parent="android:Widget">
<item name="titleTextAppearance">@style/TextAppearance.Widget.AppCompat.Toolbar.Title</item>
<item name="subtitleTextAppearance">@style/TextAppearance.Widget.AppCompat.Toolbar.Subtitle</item>
<item name="android:minHeight">?attr/actionBarSize</item>
<item name="titleMargin">4dp</item>
<item name="maxButtonHeight">@dimen/abc_action_bar_default_height_material</item>
<item name="buttonGravity">top</item>
<item name="collapseIcon">?attr/homeAsUpIndicator</item>
<item name="collapseContentDescription">@string/abc_toolbar_collapse_description</item>
<item name="contentInsetStart">16dp</item>
<item name="contentInsetStartWithNavigation">@dimen/abc_action_bar_content_inset_with_nav</item>
<item name="android:paddingLeft">@dimen/abc_action_bar_default_padding_start_material</item>
<item name="android:paddingRight">@dimen/abc_action_bar_default_padding_end_material</item>
</style>
发现有个titleMargin,再增加属性app:titleMargin="0dp",发现这样才真正的居中。