web-dev-qa-db-ja.com

editTextでEnterを無効にするandroid

EditTextがありますが、必要なのは1行だけです。ライムこれ入れました

<item name="Android:maxLines">1</item>
<item name="Android:minLines">1</item>
<item name="Android:lines">1</item>

しかし動作しません。

enter image description here

私のコードを見てください:

<LinearLayout style="@style/linearInputEntryText">
    <LinearLayout  style="@style/subLinearLayout">
        <TextView style="@style/label" Android:text="Last Name" Android:id="@+id/textView2"/>
        <EditText style="@style/editTextEntryName" Android:id="@+id/lastName"/>
    </LinearLayout>
    <View style="@style/linearInputEntryBlack" > </View>
</LinearLayout>

とスタイル:

<style name="editTextEntryName" parent="editTextEntry">
    <item name="Android:maxLines">1</item>
    <item name="Android:minLines">1</item>
    <item name="Android:lines">1</item>
    <item name="Android:layout_gravity">left</item>
</style>
21
christian russo

Androidバージョンが異なるため、これらのパラメーターを同時に含めることをお勧めします。

<item name="Android:maxLines">1</item>
<item name="Android:lines">1</item>
<item name="Android:singleLine">true</item>

そうしないと、一部のデバイスで正しく機能しません。

34
Kelevandos

Android:maxLines = "1"を指定すると、テキストを複数行にすることができますが、edittextの高さが1行で表示されるように制限されます。

Enter(改行)キーを無効にする場合は、入力タイプをテキストに設定します

    Android:inputType="text"
30
Shivam

使ってください

Android:singleLine="true"

の代わりに

    <item name="Android:maxLines">1</item>
    <item name="Android:minLines">1</item>
    <item name="Android:lines">1</item>

その単一の属性は、EditTextに1行のテキストのみを受け入れさせ、Enterボタンを無効にするのに十分です。

[〜#〜]更新[〜#〜]

このコメントを気にしないでください。

Android:singleLineは非推奨です。これを使用することはお勧めしません

この属性は公式にサポートされており、いかなる方法でも非推奨ではありません。そして、これがすべてのデバイスとすべてのAndroidバージョンで動作することも保証されています。

21
Aritra Roy

あなたは使うかもしれません

<EditText 
   ......
   Android:imeOptions="actionNext" OR "actionDone" />
5
Abdul Rahman

使用する Android:singleLine=true代わりにAndroid:maxLines=1

SingleLineについてお読みください

http://developer.Android.com/reference/Android/widget/TextView.html#attr_Android:singleLine

2
IntelliJ Amiya

使用する Android:singleLine="true"プロパティ

     <EditText 
       ......
       Android:singleLine="true"
       Android:id="@+id/lastName"/>
1
Rustam

または、Java=を使用する場合は、次のようにすることができます。

    edittext1.setSingleLine();
1
LukaxH

これは私のために働いた、

onCreateViewでeditTextのonKeyListenerを設定する-

editText.setOnKeyListener(new View.OnKeyListener() {
        @Override
        public boolean onKey(View v, int keyCode, KeyEvent event) {
            return (keyCode == KeyEvent.KEYCODE_ENTER);
        }
});

編集:Androidデフォルトのキーボードを使用している場合、これは機能しない可能性があります

1
Roshan