我尝试过OnKey,OnKeyDown,OnEditorAction,但它不起作用。当我按“Enter”时,EditText会插入一个新行。
public boolean onEditorAction(final TextView v, final int actionId, final KeyEvent event) {
System.out.println("OnEditor.");
if (actionId == EditorInfo.IME_ACTION_SEARCH ||
actionId == EditorInfo.IME_ACTION_DONE ||
event.getAction() == KeyEvent.ACTION_DOWN &&
event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
System.out.println("OnEditor.");
}
return true;
}
更新:imeOption不起作用。
答案 0 :(得分:2)
而不是您应该使用的弃用的singleLine属性
android:inputType="text"
强制单行输入。
答案 1 :(得分:0)
您需要在XML中设置android:imeOptions属性,该属性将显示相应的键盘按钮。然后你可以监听onEditorAction调用。
答案 2 :(得分:0)
将以下行添加到您的编辑文本
android:imeOptions="actionSend|flagNoEnterAction"
答案 3 :(得分:0)
您还可以使用
将edittext限制为单行android:singleLine="true"