如何将Edittext设置为多行?

时间:2017-03-06 17:10:17

标签: android-edittext android-xml multiline

我尝试将EditText设置为多行一次,然后才有效。但是当我在EditText上更改了一些内容以使它看起来有点酷时,它就不再输入多行了。

NCmisc

2 个答案:

答案 0 :(得分:2)

reqdesc = (EditText) myView.findViewById(R.id.reqdesc);
reqdesc.setInputType(InputType.TYPE_CLASS_TEXT |
             InputType.TYPE_TEXT_FLAG_MULTI_LINE |
            InputType.TYPE_TEXT_FLAG_CAP_SENTENCES);
InputFilter[] fArray = new InputFilter[1];
    fArray[0] = new InputFilter.LengthFilter(maxLength);
    reqdesc.setFilters(fArray);

它现在有效,我把这些代码行放在onCreate上。

答案 1 :(得分:0)

试试这个:

找到您的Edittext

etReqdesc = (EditText) findViewById(R.id.reqdesc);

现在以编程方式调用:在onCreate()

etReqdesc.setInputType(InputType.TYPE_CLASS_TEXT | InputType.TYPE_TEXT_FLAG_MULTI_LINE);
etReqdesc.setSingleLine(false);
etReqdesc.setImeOptions(EditorInfo.IME_FLAG_NO_ENTER_ACTION);

您的edittext应如下所示:

<EditText
    android:ems="10"
    android:inputType="textMultiLine"
    android:text="  "
    android:id="@+id/reqdesc"
    android:layout_width="fill_parent"
    android:layout_height="110dp"
    android:hint="   Enter your request here"
    android:textSize="18sp"
    android:background="@layout/rounded_border_edittext"
    android:gravity="top|left"
    android:layout_marginTop="14dp"
    android:layout_below="@+id/post"
    android:layout_alignParentStart="true" />

删除android:maxLength="80"属性。