android - 强制 TextView 与多行文本一起使用

标签 android textview

这是这个问题的后续问题:

Force TextView to mutiline without \n

我有一个 TextView 声明如下:

<TextView
        android:id="@+id/myTextView"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.4"
        android:gravity="left|start"
        android:text="TextView"
        android:singleLine="false"/>

在代码中,我设置了一个长文本, TextView 将其显示为一个长单行,而不是将其分成多行。链接问题中接受的答案建议设置 android:maxWidth 属性,但我不想那样做。如果文本的长度超过 TextView 声明中设置的 0.4 权重,我希望文本行自动断开。有没有办法做到这一点而不使用恒定大小?

根据要求,这是带有父 View 的 TextView :

<LinearLayout
    android:id="@+id/linearLayoutBottomData"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_below="@+id/linearLayoutTopData"
    android:layout_marginBottom="5dp"
    android:layout_marginTop="10dp"
    android:orientation="horizontal"
    android:weightSum="1">

    <TextView
        android:id="@+id/myTextView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.4"
        android:gravity="left|start"
        android:text="TextView"
        android:textColor="@android:color/black"
        android:textSize="@dimen/large_font_size"
        android:singleLine="false"/>

    <TextView
        android:id="@+id/myTextView2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_weight="0.4"
        android:gravity="left|start"
        android:text="TextView"
        android:textColor="@android:color/black"
        android:textSize="@dimen/large_font_size"/>
</LinearLayout>

最佳答案

也使用我在评论中提到的以下布局。

<LinearLayout
android:id="@+id/linearLayoutBottomData"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/linearLayoutTopData"
android:layout_marginBottom="5dp"
android:layout_marginTop="10dp"
android:orientation="horizontal"
android:weightSum="1">

<TextView
    android:id="@+id/myTextView1"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.4"
    android:gravity="left|start"
    android:text="TextView"
    android:textColor="@android:color/black"
    android:textSize="@dimen/large_font_size"
    android:singleLine="false"/>

<TextView
    android:id="@+id/myTextView2"
    android:layout_width="0dp"
    android:layout_height="wrap_content"
    android:layout_weight="0.4"
    android:gravity="left|start"
    android:text="TextView"
    android:textColor="@android:color/black"
    android:textSize="@dimen/large_font_size"/>

关于android - 强制 TextView 与多行文本一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47248653/

相关文章:

Android布局忽略重力属性

android - 无法在 Android map 上添加标记

android - 将常量文本放在应该不可编辑的 EditText 中 - Android

ios - 如何在 Swift 中使用一个按钮保存来自多个 UITextView 的文本

java - 按钮单击更改 TextView

如果使用右边距,Android 一行的最后一个字可能会导致不正确的 TextView 尺寸

android - Retrofit2 向 Body 对象添加额外的字符串

android - NoSuchMethodError : java. io.IOException.<init> 使用 Froyo 版本的 Google Play 服务时出现异常

java - 如何在标记下方添加 ProgressBar 和按钮

android - 如何将文本按钮添加到操作栏