android 设置键盘按钮事件,Android 改变软键盘的回车键按钮格式,然后监听回车键的点击事件...
EditText中有一個(gè)屬性:imeOptions。它的參數(shù)常用的有如下幾種:1.actionNext下一步,通常用于跳轉(zhuǎn)到下一個(gè)EditText(回車鍵監(jiān)聽不到)
2.actionGo前往,通常用于打開鏈接
3.actionSend發(fā)送,通常用于發(fā)送信息
4.actionSearch搜索,通常用于搜索信息
5.actionDone確認(rèn),通常表示事情做完了(回車鍵監(jiān)聽不到)
例如:
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:imeOptions="actionSearch"
android:singleLine="true"/>
注意這里一定還要設(shè)置singLine=“true”,不然回車還是換行的功能。
設(shè)置完成以后,我們可以設(shè)置回車鍵的點(diǎn)擊事件。editText.setOnKeyListener(new View.OnKeyListener() {
@Override
public boolean onKey(View?v,int keyCode,?KeyEvent?event)?{
if(keyCode?==?event.KEYCODE_ENTER)?{
//?TO DO
}
//我測(cè)試的為true的時(shí)候,這時(shí)候我的刪除鍵不能正常使用,因此返回為false
return false;
}
});
到這里的時(shí)候,我又發(fā)現(xiàn)了一個(gè)問題,回車鍵的點(diǎn)擊事件會(huì)執(zhí)行兩次。這是由于Key有Down和Up事件,即你按下和松開的時(shí)候都會(huì)觸發(fā)事件,所以會(huì)執(zhí)行兩次。因此我們需要處理一下:// TODO
if(keyCode == KeyEvent.KEYCODE_ENTER&& event.getAction() == KeyEvent.ACTION_DOWN) {
InputMethodManager imm = (InputMethodManager) v.getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
key = search_edit_text.getText().toString();
if(imm.isActive()) {
imm.hideSoftInputFromWindow(v.getApplicationWindowToken(),0);
}
}
return false;
我們的處理是加上了判斷當(dāng)前是按下的操作,然后還添加了判斷軟鍵盤是不是顯示狀態(tài),如果是就隱藏,即你點(diǎn)擊回車鍵后就關(guān)閉軟鍵盤。
總結(jié)
以上是生活随笔為你收集整理的android 设置键盘按钮事件,Android 改变软键盘的回车键按钮格式,然后监听回车键的点击事件...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: CentOS 6 安装免费虚拟主机控制面
- 下一篇: Android 更改软键盘右下角按键的样