TextView ellipsize高度明智

时间:2013-06-21 16:32:17

标签: android android-layout textview

对于y轴上太长的文本,是否有android:ellipsize(对于x轴上的文本太长的文本进行椭圆化)?我有一个TextView,它必须是一个固定的高度,但是它内部的文字通常太长而且不适合所有人,我希望它在被切成两半之前停止。

example cut off

我不想设置android:maxLines属性,以便支持多种屏幕尺寸。

我也考虑过使用......

int maxLines = (int) textView.getHeight() / textView.getLineHeight();
textView.setMaxLines(maxLines);

...,但这可能会导致问题,因为markup within the text can cause individual lines to be taller or shorter than this height

编辑:我可以在这里使用ScrollView来防止切换一半的文本,但我希望这是一个预览,下面有一个按钮供用户点击查看整个文本。

2 个答案:

答案 0 :(得分:0)

您可以将TextView包装在ScrollView中。

<ScrollView android:id="@+id/MyTextParent"
    android:layout_width="fill_parent"
    android:layout_height="100dp"
    android:scrollbars="vertical">

    <TextView android:id="@+id/MyText"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:text="TEXT"/>

</ScrollView>

答案 1 :(得分:0)

尝试使用setEllipsize(TextUtils.TruncateAt where)手动设置ellipsize,并定义要切断文本的位置。