android - TextView 椭圆高度明智

标签 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 来防止文本被截断一半,但我更希望这是一个预览,下面有一个按钮供用户单击以查看整个文本。

最佳答案

您可以将 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>

关于android - TextView 椭圆高度明智,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17240131/

相关文章:

Android - 文件提供者 - 权限拒绝

android - 如何在 Android 中给两个线性布局之间的空间

android - 随机 TextView 位置

android - 以编程方式设置 textview 焦点颜色/更改主题中的焦点颜色

android - TextView 和 EditText 溢出

Android - 如何判断特定 View 何时被渲染?

php - 在Android(模拟器)中连接服务器数据库

java - 如何读取 firestore 子集合并将其传递给 FirestoreRecyclerOptions

android - afreechart - ScrollView 中的图表

java - Android - TextView 不显示