如何保留EditText中的换行符?

时间:2012-07-01 17:47:14

标签: android

以下内容在显示时忽略新行

private void post() {
        String subject = "";
        String message = "";
        subject = etSubject.getText().toString();
        message = etMessage.getText().toString();

编辑:我的编辑文本已经设置为多行,但是当我在其中编写多行文字时,它将作为单行返回,上面有封面

edit2:我从editText获取文本并将其显示在textview

7 个答案:

答案 0 :(得分:20)

使用replaceAll("\\n", "<br />")

解决了这个问题
message = etMessage.getText().toString().replaceAll("\\n", "<br />")

答案 1 :(得分:2)

使用android:inputType="textMultiLine"属性...在xml或Eclipse Gui中设置

答案 2 :(得分:1)

如果要在TextView中添加android:inputType="textMultiLine",请尝试添加android:singleLine="false" 您的EditText定义android:inputType="textMultiLine"

修改:

这是你的EditText应该有<TextView android:id="@+id/myDisplayingTextView" android:layout_width="fill_parent" android:layout_height="wrap_content" /> <EditText android:id="@+id/myEditText" android:inputType="textMultiLine" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="" android:singleLine="false" /> 例如:

{{1}}

答案 3 :(得分:0)

这也有效:

editText.getText().toString().replaceAll("\\n", "\n");

答案 4 :(得分:0)

试试这个,它应该有用

message = etMessage.getText().toString().replaceAll("[\r\n]+", "\n");

答案 5 :(得分:0)

在科特林,试试这个,     val msg = evMsg.text.toString().replace("\\n".toRegex(), "<br />")

答案 6 :(得分:-2)

String text=editText1.getText().toString().replace("\n", " ").trim();