Android Can';t更改折叠工具栏的字体样式
我有一个包含折叠工具栏的布局,里面是ImageView和工具栏 并希望更改标题的默认字体。我制作了以下样式,并将其应用于折叠工具栏和工具栏Android Can';t更改折叠工具栏的字体样式,android,toolbar,Android,Toolbar,我有一个包含折叠工具栏的布局,里面是ImageView和工具栏 并希望更改标题的默认字体。我制作了以下样式,并将其应用于折叠工具栏和工具栏 <style name="ToolbarTheme" parent="ThemeOverlay.AppCompat.Dark"> <item name="android:fontFamily">sans-serif-black</item>
<style name="ToolbarTheme" parent="ThemeOverlay.AppCompat.Dark">
<item name="android:fontFamily">sans-serif-black</item>
</style>
无衬线黑色
AppBar的布局
<com.google.android.material.appbar.AppBarLayout
android:layout_width="match_parent"
android:fitsSystemWindows="true"
android:layout_height="200dp">
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:fitsSystemWindows="true"
app:contentScrim="@color/fuel_yellow"
android:theme="@style/ToolbarTheme"
app:popupTheme="@style/ToolbarTheme"
app:layout_scrollFlags="scroll|exitUntilCollapsed">
<ImageView
android:layout_width="match_parent"
android:layout_height="200dp"
android:scaleType="centerCrop"
android:fitsSystemWindows="true"
android:src="@drawable/noclegi"/>
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_scrollFlags="scroll|enterAlways"
android:fitsSystemWindows="true"
app:layout_collapseMode="pin"/>
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
除标题和导航图标颜色外,其他内容不变。问题出在哪里?要更改折叠工具栏布局的字体样式,可以使用属性app:expandedtitletextearance和app:collapsedtitletextearance并使用自定义字体样式 折叠工具栏如下所示:
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:expandedTitleTextAppearance="@style/MyExpandedTitle"
app:collapsedTitleTextAppearance="@style/MyCollapsedTitle">
<style name="MyExpandedTitle" parent="@style/TextAppearance.Design.CollapsingToolbar.Expanded">
<item name="android:fontFamily">sans-serif-black</item>
</style>
<style name="MyCollapsedTitle" parent="@style/TextAppearance.AppCompat.Title">
<item name="android:fontFamily">sans-serif-black</item>
</style>
<style name="MyExpandedTitle" parent="@style/TextAppearance.Design.CollapsingToolbar.Expanded">
<item name="fontFamily">@font/roboto_regular</item>
<item name="android:fontFamily">@font/roboto_regular</item>
</style>
<style name="MyCollapsedTitle" parent="@style/TextAppearance.AppCompat.Title">
<item name="fontFamily">@font/roboto_regular</item>
<item name="android:fontFamily">@font/roboto_regular</item>
</style>
其中@style/MyExpandedTitle和@style/MyCollapsedTitle将是您的自定义文本外观样式,如下所示:
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:expandedTitleTextAppearance="@style/MyExpandedTitle"
app:collapsedTitleTextAppearance="@style/MyCollapsedTitle">
<style name="MyExpandedTitle" parent="@style/TextAppearance.Design.CollapsingToolbar.Expanded">
<item name="android:fontFamily">sans-serif-black</item>
</style>
<style name="MyCollapsedTitle" parent="@style/TextAppearance.AppCompat.Title">
<item name="android:fontFamily">sans-serif-black</item>
</style>
<style name="MyExpandedTitle" parent="@style/TextAppearance.Design.CollapsingToolbar.Expanded">
<item name="fontFamily">@font/roboto_regular</item>
<item name="android:fontFamily">@font/roboto_regular</item>
</style>
<style name="MyCollapsedTitle" parent="@style/TextAppearance.AppCompat.Title">
<item name="fontFamily">@font/roboto_regular</item>
<item name="android:fontFamily">@font/roboto_regular</item>
</style>
无衬线黑色
无衬线黑色
或者,如果您想使用自定义字体,则如下所示:
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsing_toolbar"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:expandedTitleTextAppearance="@style/MyExpandedTitle"
app:collapsedTitleTextAppearance="@style/MyCollapsedTitle">
<style name="MyExpandedTitle" parent="@style/TextAppearance.Design.CollapsingToolbar.Expanded">
<item name="android:fontFamily">sans-serif-black</item>
</style>
<style name="MyCollapsedTitle" parent="@style/TextAppearance.AppCompat.Title">
<item name="android:fontFamily">sans-serif-black</item>
</style>
<style name="MyExpandedTitle" parent="@style/TextAppearance.Design.CollapsingToolbar.Expanded">
<item name="fontFamily">@font/roboto_regular</item>
<item name="android:fontFamily">@font/roboto_regular</item>
</style>
<style name="MyCollapsedTitle" parent="@style/TextAppearance.AppCompat.Title">
<item name="fontFamily">@font/roboto_regular</item>
<item name="android:fontFamily">@font/roboto_regular</item>
</style>
@字体/机械手
@字体/机械手
@字体/机械手
@字体/机械手
这可以通过编程方式自定义到工具栏
它工作得很好:)删除导航图中的标签并在折叠工具栏中设置标题很重要。