我的问题是下一个问题。我会使用相对较大的文本作为CollapsingToolbarLayout标题,所以我需要将其显示为多行模式。当我尝试通过setExpandedTitleTextAppearance()
方法更改文本外观时,它不起作用。我使用的代码是下一个:
<style name="ToolbarExpandedTitle">
<item name="android:textSize">48sp</item>
<item name="android:shadowColor">#ffffff</item>
<item name="android:textColor">@android:color/white</item>
<item name="android:singleLine">false</item>
<item name="android:minLines">3</item>
<item name="android:lines">4</item>
<item name="android:maxLines">5</item>
</style>
我希望在多行上看到标题,而不是显示省略号。
答案 0 :(得分:17)
结帐此库multiline-collapsingtoolbar。
multiline-collapsingtoolbar是替代品 来自Android设计支持库的CollapsingToolbarLayout 可以处理多行标题(目前硬编码为最多3个 在扩展状态下。折叠工具栏时,较低 标题的行渐渐消失,只留下顶行。
作为设计支持库,它应该与API 7(Android 2.1)及以上
兼容答案 1 :(得分:6)
随着新的Material Design 1.2.0-alpha05的发布,此功能已作为本机功能实现。
版本为(1.2.0-alpha05)之后的实现材料库:
implementation 'com.google.android.material:material:1.2.0-alpha05'
将此行添加到折叠工具栏布局的XML中(此示例中,我最多设置2行)
app:maxLines="2"
或者您可以通过编程方式设置
collapsingtoolbar.setMaxLines(2);
答案 2 :(得分:4)
目前似乎不支持此功能。可能的解决方法是使用您自己的视图并在展开时隐藏工具栏标题。这样做的一种方法是:
https://stackoverflow.com/a/31529101/834692
希望未来版本的支持库会添加此功能。
答案 3 :(得分:4)
更简单的方法是添加添加到CollapsingToolbar的自定义布局并固定它。
需要注意的一些注意事项:
查看完整代码here。最终结果是:
答案 4 :(得分:2)
我在这个图书馆的帮助下做到了这一点
https://github.com/opacapp/multiline-collapsingtoolbar
将库添加到项目中
并将CollapsingToolbarLayout
替换为net.opacapp.multilinecollapsingtoolbar.CollapsingToolbarLayout