在Android EditText小部件上设置多行文字

时间:2012-01-26 07:33:50

标签: android text

我从.txt文件中读取多行文本,然后是setText,但所有换行都消失了,我错过了什么? (编辑器有android:inputType =“textMultiLine”set):

BufferedReader r;
r = new BufferedReader(new FileReader(AbrarFilePaths.NotebooksPath() + fileName));
StringBuilder total = new StringBuilder();
String line;
while((line = r.readLine()) != null) 
  { total.append(line);}
editor.setText(total);

3 个答案:

答案 0 :(得分:1)

尝试使用:

while((line = r.readLine()) != null) 
  { total.append(line + "\n");}
editor.setText(total);

例如,将MaxLines设置为1000。 它对我有用。

答案 1 :(得分:0)

我不认为EditText可以检测到新行字符。您可能必须构建自定义组件来处理

答案 2 :(得分:0)

在xml文件中设置此属性android:maxLines =“10”10行在edittext中。

或者你可以尝试

<EditText
    android:id="@+id/msgText"
    android:layout_width="fill_parent"
    android:textSize="18sp"
    android:layout_alignParentLeft="true"
    android:layout_marginLeft="10dip"
    android:layout_marginTop="10dip"
    android:layout_marginRight="10dip"
    android:scrollbarAlwaysDrawVerticalTrack="true"
    android:inputType="textMultiLine"
    android:layout_height="150dip"
    android:gravity="top"
    android:padding="5dip">
</EditText>