android - 更改自定义样式资源中的文本样式(变为粗体)以折叠工具栏布局
问题描述
我在项目中使用可折叠工具栏,并尝试将textStyle
展开的折叠工具栏标题设置为粗体。
出于某种原因,我几乎可以使用自定义文本外观更改任何内容,除了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">
...
解决方案
这个对我有用。在布局文件中为折叠工具栏定义了文本外观后,我可以使用该setExpandedTitleTypeface
函数为当前使用的字体添加粗体样式:
mCollapsingToolbarLayout.setExpandedTitleTypeface(Typeface.create(mCollapsingToolbarLayout.getExpandedTitleTypeface(), Typeface.BOLD));
textStyle
折叠工具栏似乎没有考虑该属性。
一个缺点是默认情况下折叠工具栏会省略标题,这在某些情况下可能不是所需的行为。
推荐阅读
- swift - Call a function that animates using CGAffineTransform sequentially
- java - 如何忽略使用 Jackson 序列化列表中的类?
- html - 在 Safari/iOS 上显示白线的重复背景 SVG
- pytorch - 关于将什么输入到损失函数中的问题
- javascript - 如何在 php 和 javascript 中将内容表单文本编辑器保存到数据库?
- javascript - 按组创建包含数据的表
- c++ - 如何反映字段名称和类型
- python - 如何返回 Python 字典中的两个最小值?
- python - 抓取传入的新电报频道消息
- c# - 如何将一个类传递给一个方法,以便该方法可以获得对该类的引用并对其采取行动?