У меня есть Activity, где я хочу отобразить заголовок, который занимает верхнюю четверть приложения и отображает динамический набор текста. В некоторых случаях все это будет соответствовать одной строке, и я бы хотел, чтобы размер шрифта был увеличен, чтобы он был большим и легким для чтения. В некоторых случаях он будет на нескольких строках (обычно меньше 4) и должен быть меньше.
Усложнение состоит в том, что если я явно устанавливаю новые строки в setText, иногда он вставляет новую строку, где я не ожидал ее, т.е.
"My first line of text\nMy Second line of text" Might get turned into (it right adjusted in this version): "My first line of text My second line of text"
Я не уверен, как сделать так, чтобы TextView не пытался вставлять новые строки или позволял ему просто позаботиться о форматировании всего. Если я установил некоторый текст как одно длинное одно слово, он введет новую строку в середине в какой-то выбранной точке. И в других случаях я просто произвольно получаю последние несколько строк текста.
Должен ли я просто указать размер шрифта на самом деле очень маленьким, чтобы правильно его расставить, а затем вручную настроить размер? Есть ли "лучшая практика", которую я должен использовать для этого? Если я установил размер шрифта как достаточно крупный шрифт, он вроде бы работает, но было бы неплохо выяснить, что такое "правильный" способ сделать это. И я бы предпочел не добавлять вручную 4 однострочных TextViews и форматировать их самостоятельно.
Макет xml, который я использую, это:
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_alignParentRight="true"
android:layout_marginTop="10dip"
android:layout_marginRight="8dip"
android:singleLine="false"
android:ellipsize="marque"
android:gravity="right|bottom"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textSize="30sp"
/>