在我的登录表单中,当用户单击EditText并按下回车键时,会插入一个新行,从而增加EditText的大小。下一刻,它返回到之前的位置并在密码字段中打印一个点(这是下一个字段)。
我想从软键盘中删除此回车键。有可能吗?
答案 0 :(得分:34)
使用:
android:singleLine = "true"
要么
edittext.setSingleLine();
你的ENTER键消失了
答案 1 :(得分:23)
将此标记添加到xml
中的textView android:singleLine = "true"
答案 2 :(得分:19)
恐怕你不能这样做。但有一点是你可以像这样处理软键盘键事件
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;
}
});
除此之外,你必须注意,当按下soft keyborad ENTER时,提供属性android:singleLine=true
会使你的edittext的大小增加
答案 3 :(得分:3)
在标记EditText
内,您只需执行以下操作:
android:singleLine="true"
这会删除键盘上的回车键
更新
由于android:singleLine="true"
已弃用,我使用android:maxLines="1"
来避免输入EditText
。该方法的名称仅允许 N 行。
答案 4 :(得分:0)
新更新:
android:maxLines =“ 1”
答案 5 :(得分:0)
如果您想在.java文件中添加更通用的内容:
boolean state = true;
yourTextInputEditText.setSingleLine(state);