调整TextView的大小不会在Android 3.1上缩小其高度

时间:2011-08-08 17:56:45

标签: android resize textview

我有一个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

2 个答案:

答案 0 :(得分:1)

可能有点晚了,这是一个错误

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);              

答案 1 :(得分:0)

我知道这是一个老话题。

但是上面列出的所有这些字符对我来说都没有正常工作,我在5.0.1中遇到了这个问题,修复方法是将textview gravity设置为垂直居中。

希望这有助于任何人:)