可能重复:android- singlline -true-not-working-for edittext

<EditText 
    android:id="@+id/searchbox"  
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:lines="1"
    android:scrollHorizontally="true"
    android:ellipsize="end"
    android:layout_weight="1"
    android:layout_marginTop="2dp"
    android:drawablePadding="10dp"
    android:background="@drawable/edittext"
    android:drawableLeft="@drawable/folder_full"
    android:drawableRight="@drawable/search"
    android:paddingLeft="15dp"
    android:hint="search...">
</EditText>

我想使上面的EditText只有单行。即使用户按下“enter”键,光标也不能下到第二行。有人能帮我一下吗?


当前回答

编程:

textView.setMaxLines(1);

其他回答

对以上所有内容再做一个评论。如果你需要数值输入类型,只需使用inputType="number"。但如果你将使用android:digits="0123456789",你无法实现你需要的任何属性的效果,如lines, maxLines, inputType

使用android:maxLines="1"和android:inputType="text"

你忘记了android:maxLines属性。在你的例子中,下面会给出这样的结果:

<EditText 
    android:id="@+id/searchbox"  
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:maxLines="1"
    android:inputType="text"
    android:scrollHorizontally="true"
    android:ellipsize="end"
    android:layout_weight="1"
    android:layout_marginTop="2dp"
    android:drawablePadding="10dp"
    android:background="@drawable/edittext"
    android:drawableLeft="@drawable/folder_full"
    android:drawableRight="@drawable/search"
    android:paddingLeft="15dp"
    android:hint="search...">
</EditText>

将这一行添加到编辑文本中

android: inputType =“文本”

作为android:singleLine="true"现在是贬值,所以使用

android:maxLines=“1”

使用maxLines来改变静态文本的布局,并使用inputType属性中的textMultiLine标志来代替可编辑文本视图(如果同时提供了singleLine和inputType, inputType标志将覆盖singleLine的值)。

在XML文件。只需添加

android:maxLines=“1”