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 中。通过将所有文本放在一个 TextView 中并以换行符结束每一行,它现在可以在更改字体大小时调整垂直间距。

并且更改为 1 已经过测试,也可以在旧版本的 Android 上运行。

我不记得为什么我首先使用了一组 TextViews,现在看起来似乎是一个糟糕的选择,但它确实适用于旧版本。

汤姆兹

于 2012-05-08T12:54:41.500 回答