2012-07-01 85 views
3

以下忽视,当我展示他们的新线如何从EditText保留换行符?

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

编辑:我的EditText已经设置,当我写它它返回与盖上面

EDIT2单行multilined文本但是多:我收到来自EDITTEXT文本和一个TextView显示它

+0

你会发布更多的代码?你有什么不应该忽略新行字符。 – Sam

回答

18

要解决它使用replaceAll("\\n", "<br />")

message = etMessage.getText().toString().replaceAll("\\n", "<br />") 
+0

上帝保佑你!谢谢,当我需要使用html.toHtml转换消息时,我遇到了一个问题,我必须创建一个Spannable,但在这个过程中,
会丢失=/ – user2582318

+0

其感谢上帝保佑你! – sirmagid

+0

上帝保佑你!你节省了我的时间! – Mabad

1

尝试添加android:inputType="textMultiLine"如果你是在一个TextView显示它也增加 android:singleLine="false"到您的EditText定义。

编辑:

这是你的EditText应该有android:inputType="textMultiLine"例如:

<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" 
/> 
+0

看到我原来的文章我编辑它 – code511788465541441

+0

你写它,并在TextView中显示它?如果是这样你的文本视图应该有android:inputType =“textMultiLine” –

+0

编辑我的回答 –

2

使用android:inputType="textMultiLine"属性...设置它的XML或者Eclipse桂

+0

看到我原来的文章我编辑它 – code511788465541441

+0

你在哪里设置文本...是它的另一个EditText或TextView –

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

这也适用于:

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

试试这个,它应该工作

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