防止多行TextView中的自动换行

时间:2018-03-05 14:51:16

标签: android textview

我知道这个问题已被多次询问,但可能并不完全符合这一要求。

我想创建一个日志视图,因此目前基于TextView,显然,就像在所有日志视图中一样,在AS的logcat中,我会有几行,所以我可以启用vertical scrollbar我可以有很长的日志行,每行以\n结尾 在这里,我希望horizontal scrollbar可以帮助我。但似乎没有,对吧?

如果没有,怎么办?

编辑我当前的Textview定义:

                <TextView
                    android:id="@+id/tvLog"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginBottom="8dp"
                    android:background="@android:color/darker_gray"
                    android:ems="10"
                    android:gravity="fill_horizontal"
                    android:inputType="none"
                    android:lines="5"
                    android:maxLines="20"
                    android:scrollbars="horizontal|vertical"
                    android:singleLine="false"
                    app:layout_constraintBottom_toBottomOf="parent"
                    app:layout_constraintEnd_toEndOf="parent"
                    app:layout_constraintStart_toStartOf="parent"
                    app:layout_constraintTop_toBottomOf="@+id/elvTests" />

1 个答案:

答案 0 :(得分:0)

因为我已经明白你想要显示所有文字并且你可以向下滚动所以基于我猜你可以做这样的事情

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="match_parent">


    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/long_text"/>
</ScrollView>

将文本视图放在与其父级宽度和高度相匹配的滚动视图中,并使用带有wrap_content的文本视图启用此行为希望这有助于

修改

将它放在应该完成工作的代码中

TextView textview= (TextView) findViewById(R.id.your_textview_id);
textview.setMovementMethod(new ScrollingMovementMethod());