Android: Remove Enter Key from softkeyboard

2019-03-18 08:01发布

In my login form when user clicks on an EditText and presses the enter key, this inserts a new line, therefore increasing the EditText's size. Next moment, it returns to its previous place and prints a dot in the password field (which is the next field).

I want to remove this enter key from the softkeyboard. Is it possible?

5条回答
男人必须洒脱
2楼-- · 2019-03-18 08:14

add this tag to textView in xml

    android:singleLine = "true"
查看更多
叛逆
3楼-- · 2019-03-18 08:14

Inside the tag EditText you only have to do:

android:singleLine="true"

this remove the enter key in the keyboard

UPDATE

Inasmuch as android:singleLine="true" is deprecated I use android:maxLines="1" to avoid the enter in a EditText. How the name of the method says only N lines is permitted.

查看更多
孤傲高冷的网名
4楼-- · 2019-03-18 08:14

New update :

android:maxLines="1"

查看更多
ゆ 、 Hurt°
5楼-- · 2019-03-18 08:16

Use : android:singleLine = "true" or edittext.setSingleLine();

And your ENTER key is gone

查看更多
做个烂人
6楼-- · 2019-03-18 08:25

I am afraid you can't do this. But one thing is you can handle the softkeyboard keyevents like this,

edittext.setOnKeyListener(new OnKeyListener() {

        public boolean onKey(View v, int keyCode, KeyEvent event) {


                if (event.getAction() == KeyEvent.ACTION_DOWN
                        && event.getKeyCode() ==       KeyEvent.KEYCODE_ENTER) {
                    Log.i("event", "captured");

                    return false;
                } 
                else if(event.getAction() == KeyEvent.ACTION_DOWN
                        && event.getKeyCode() == KeyEvent.KEYCODE_BACK){
                    Log.i("Back event Trigered","Back event");

                }

            }

            }
            return false;
        }
    });

Apart from this, you have to note that providing the attribute android:singleLine=true will make your edittext from growing in size when the soft keyborad ENTER is pressed

查看更多
登录 后发表回答