これはの仕事のように聞こえSpannable
ます。2つのビューを実行する際の問題に気付いたようTextView
に、2行の例のの境界はまだ長方形であるため、テキストの最後に2番目のビューを配置するのは難しいです。HTMLは単純なタグ(太字、下線、見出し)で機能しますが、柔軟性が高すぎません。
解決策は、Spannable
各「スパン」に特定のフォーマットが適用されたコンテンツのテキストoufを作成するために使用することです。結局のところ、結果全体を1つにまとめることができますTextView
。何かのようなもの:
TextView tv; //Defined somewhere else
SpannableStringBuilder resultBuilder = new SpannableStringBuilder();
SpannableString item = new SpannableString("Long and Fancy Movie Title Here");
item.setSpan(new AbsoluteSizeSpan(18, true), 0, item.length(), 0);
resultBuilder.append(item);
SpannableString item = new SpannableString("(2011)");
item.setSpan(new AbsoluteSizeSpan(12, true), 0, item.length(), 0);
resultBuilder.append(item);
tv.setText(resultBuilder, TextView.BufferType.SPANNABLE);
にはさまざまなスパン定義がたくさんありますandroid.text.style
。上記は、同じ文字列に2つの異なるテキストサイズを作成するための単なる例です。TextAppearanceSpan
これ、、、TypefaceSpan
または他の組み合わせから必要なものを取得できるはずです。
HTH