我有一个TextView,可以动态调整大小(我使用setTextSize()).它正确地扩展和缩小了Android 2.2的界限.但是在Android 3.1上,当文本变小时,区域的高度不会缩小.
Here is the short video证明了这一点.
布局只是简单的垂直LinearLayout:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="0dip">
...
<TextView
android:id="@+id/track_number"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
style="@style/tcTrackNo"
android:padding="5dp" />
...
<style name="tcTrackNo" parent="@android:style/TextAppearance.Small">
<item name="android:textColor">@color/track_number</item>
</style>
那么,应该做些什么来使TextView相应地减小其在Honeycomb上的字体大小的高度?
PS.同样,在Android 2.2上,文本区域折叠到最小高度,没有任何问题. The video how it’s intended to work.
解决方法:
可能有点晚了,这是一个bug
http://code.google.com/p/android/issues/detail?id=17343
http://code.google.com/p/android/issues/detail?id=22493
但是有一种解决方法是在文本末尾附加一个非宽度字符.
任何这些工作
final String DOUBLE_BYTE_SPACE = "\u3000";
final String DOUBLE_BYTE_WORDJOINER = "\u2060";
final String ZERO_WIDTH_SPACE = "\u200b";
textview.append(ZERO_WIDTH_SPACE);