アプリの上部 4 分の 1 を占め、動的なテキスト セットを表示する見出しを表示するアクティビティがあります。場合によっては、すべてが 1 行に収まるので、フォント サイズを大きくして読みやすくしたいと考えています。場合によっては、複数行 (通常は 4 行未満) になり、小さくする必要があります。
複雑なのは、setText で改行を明示的に設定すると、予期しない場所に改行が挿入されることがあります。つまり、次のようになります。
"テキストの最初の行\nテキストの 2 行目" に変わる可能性があります (このバージョンでは正しく調整されています): 「私の最初の行 文章 私の二行目 テキストの」
TextView が改行を挿入しようとしないようにする方法と、全体のフォーマットを処理する方法がわかりません。テキストを 1 つの非常に長い単語に設定すると、選択したポイントの途中に改行が挿入されます。また、最後の数行のテキストをランダムに取得する場合もあります。
フォント サイズを明示的に非常に小さく設定して正しくレイアウトし、手動でサイズを調整する必要がありますか? これに使用する必要がある「ベストプラクティス」はありますか? フォント サイズを適度に大きなフォントに設定すると、ある程度は機能しますが、これを行う「正しい」方法が何であるかを理解しておくとよいでしょう。そして、4つの単一行のTextViewを手動で追加して自分でフォーマットする必要はありません。
私が使用しているレイアウト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"
/>