java - 为什么 CollapsingToolbarLayout 中工具栏标题的字体和颜色没有变化?
问题描述
我很难让它工作。它仅适用于 sans-seriff 等默认字体。任何导入的字体都适用于所有文本视图,但不适用于折叠工具栏。请帮忙。
样式.xml
<style name="AppBarTitleStyle" parent="ThemeOverlay.AppCompat.Dark.ActionBar">
<item name="android:fontFamily">@font/amatica_sc_reg</item>
<item name="android:titleTextColor">@android:color/white</item>
</style>
折叠工具栏.xml
<com.google.android.material.appbar.AppBarLayout
android:id="@+id/appBarLayout"
android:layout_width="match_parent"
android:layout_height="308dp"
android:background="@color/color_secondary"
app:expanded="false">
<com.google.android.material.appbar.CollapsingToolbarLayout
android:id="@+id/collapsingtoolbarid"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@drawable/colliding"
app:contentScrim="?attr/colorPrimary"
app:expandedTitleMarginEnd="64dp"
app:expandedTitleMarginStart="48dp"
app:layout_scrollFlags="exitUntilCollapsed|scroll|snap"
app:title="Learn Miwok"
app:expandedTitleTextAppearance="@style/AppBarTitleStyle"
app:collapsedTitleTextAppearance="@style/AppBarTitleStyle">
<androidx.appcompat.widget.Toolbar
android:id="@+id/toolbarid"
android:layout_width="match_parent"
android:layout_height="?attr/actionBarSize"
app:layout_collapseMode="pin">
</androidx.appcompat.widget.Toolbar>
</com.google.android.material.appbar.CollapsingToolbarLayout>
</com.google.android.material.appbar.AppBarLayout>
解决方案
您可以使用以下代码使用 java 添加字体
final Typeface tf = Typeface.createFromAsset(context.getAssets(), "fonts/amatica_sc_reg");
collapsingToolbar.setCollapsedTitleTypeface(tf);
collapsingToolbar.setExpandedTitleTypeface(tf);