将自定义样式资源中的文本样式更改为粗体,以折叠工具栏布局

时间:2018-07-11 06:40:44

标签: android android-collapsingtoolbarlayout textstyle

我在项目中使用了可折叠工具栏,并且试图将展开的可折叠工具栏标题的textStyle设置为 bold

由于某种原因,除了textStyle之外,我几乎可以使用自定义文本外观进行任何更改。有人有关于该问题的任何信息吗?我发现很难在互联网上搜索。我以编程方式尝试均无济于事。

<!-- style resource -->
...
<style name="Toolbar_Title" parent="@android:style/TextAppearance.Large">
    <item name="android:fontFamily">sans-serif-condensed</item>
    <item name="android:textColor">@android:color/white</item>
    <item name="android:textSize">@dimen/detail_title_text_size</item>
    <item name="android:textStyle">bold</item>
</style>
...

<!-- layout file -->
...
    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/collapsing_toolbar_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:expandedTitleMarginBottom="16dp"
        app:expandedTitleMarginStart="16dp"
        app:expandedTitleTextAppearance="@style/Toolbar_Title"
        app:layout_scrollFlags="scroll|exitUntilCollapsed|snap">
...

1 个答案:

答案 0 :(得分:0)

这个对我有用。在折叠工具栏的布局文件中定义了文本外观后,我可以使用setExpandedTitleTypeface函数将粗体样式添加到当前使用的字体类型:

mCollapsingToolbarLayout.setExpandedTitleTypeface(Typeface.create(mCollapsingToolbarLayout.getExpandedTitleTypeface(), Typeface.BOLD));

折叠的工具栏似乎未考虑属性textStyle

一个缺点是,默认情况下,折叠的工具栏会自动缩小标题的大小 。在某些情况下,这可能不是您想要的行为。