いくつかのオブジェクトを含むテキストがTextView
いっぱいです。ImageSpan
画像が通常の行の高さよりも高くなる可能性があり、次の問題が発生します。
- 画像が行の最後のオブジェクトである場合、次の行の高さは正しいです
- 最後のオブジェクトが画像でない場合、次の行の高さは画像を含む行の高さに設定されます
さらに興味深いのは、テキストに改行文字がある場合、その時点から行の高さが適切であることです。
これTextView
は非常に基本的なものです。
<TextView
android:id="@+id/text_02"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:padding="18dp"
android:text="Text 02" />
(TextView
は にあり、LinearLayout
にありScrollView
ます。)
これは、スパンされたテキストを作成する方法です。
TextView textView02 = (TextView) findViewById(R.id.text_02);
SpannableString string = new SpannableString(LOREM_IPSUM);
string.setSpan(new ImageSpan(this, R.mipmap.ic_launcher), 102, 103, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
string.setSpan(new ImageSpan(this, R.mipmap.ic_launcher), 105, 106, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
string.setSpan(new ImageSpan(this, R.mipmap.ic_launcher), 108, 109, Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
textView02.setText(string);
誰かがこれに対する解決策について何か考えを持っていますか? TextView
の線画メソッドを再実装したくありません...