Как я могу многострочный расширенный заголовок CollapsingToolbarLayout?
моя проблема следующая. Я бы использовал относительно большие тексты в качестве заголовка 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>
Я хотел бы видеть заголовок на нескольких строках вместо отображения многоточия.
4 ответов
проверить эту библиотеку multiline-collapsingtoolbar.
multiline-collapsingtoolbar замена для CollapsingToolbarLayout из библиотеки поддержки дизайна Android, которая может иметь дело с многострочными заголовками (в настоящее время жестко закодированными до 3 линии) в развернутом состоянии. При сворачивании панели инструментов нижняя строки заголовка исчезают, оставляя видимой только верхнюю строку.
Как библиотека поддержки дизайна, он должен быть совместим с API 7 (Android 2.1) и выше
или
следуйте этому ответу CollapsingToolbarLayout пользовательский вид
в настоящее время это, похоже, не поддерживается. Возможным обходным путем является использование собственного представления и скрытие заголовка панели инструментов при расширении. Один из подходов к этому здесь:
https://stackoverflow.com/a/31529101/834692
надеюсь, будущая версия библиотеки поддержки добавит это.
более простым подходом было бы добавить пользовательский макет, добавленный в CollapsingToolbar и закрепить его, панель инструментов должна иметь одинаковую высоту, это можно сделать с помощью кода, конечный результат:
проверка полного кода здесь
Я сделал это с помощью этой библиотеки
https://github.com/opacapp/multiline-collapsingtoolbar
добавить библиотеку в ваш проект
и замените CollapsingToolbarLayout
с net.opacapp.multilinecollapsingtoolbar.CollapsingToolbarLayout