0

ユーザーがテキストサイズを変更できるアプリがあります。Android 2.Xでは、テキストを小さくすると、垂直方向の間隔も小さくなります。4.Xでは、テキストが小さくなり、間隔は同じままです。

サイズを変更するために使用している呼び出しは次のとおりです(複数の行を変更するためのループがあります):

tvData[i].setTextSize(TypedValue.COMPLEX_UNIT_PX, fSize);

テキストフィールドは、main.xmlで次のように説明されています(複数あり、それぞれが前のフィールドの「下」にあります。

<TextView android:id="@+id/textOut1"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:gravity="center_horizontal"
    android:typeface="monospace"
    android:textSize="28dip"
    android:textColor="#000000"
    android:textStyle="bold"
    android:layout_below="@id/textOut0"
    />

これが新旧両方のAndroidで機能するようにするには、何をする必要がありますか?

4

1 に答える 1

0

修正は、テキストの各行を別々のTextViewに配置しないことでした。すべてのテキストを1つのTextViewに配置し、各行を改行で終了することにより、フォントサイズが変更されたときに垂直方向の間隔を調整するようになりました。

また、1つへの変更は、古いバージョンのAndroidでも機能することがテストされています。

そもそもなぜTextViewsの配列を使用したのか思い出せません。今それを見ると悪い選択のように思えますが、古いバージョンでは機能しました。

TomZ

于 2012-05-08T12:54:41.500 に答える