安卓監聽和修改軟鍵盤右下角按鈕
阿新 • • 發佈:2019-01-02
前言:監聽軟鍵盤右下角按鈕在我們開發中經常遇到,下面我來說一下如何針對軟鍵盤右下角來進行操作。
監聽軟鍵盤右下角的按鈕很簡單,只需要重寫Activity中的dispatchKeyEvent(KeyEvent event)方法就好,比如想按右下角按鈕讓他消失。
@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if(event.getKeyCode() == KeyEvent.KEYCODE_ENTER){
//隱藏軟鍵盤
InputMethodManager inputMethodManager =(InputMethodManager)
getSystemService(Context.INPUT_METHOD_SERVICE);
if (inputMethodManager.isActive()){
inputMethodManager
.hideSoftInputFromWindow(MainActivity.this.getCurrentFocus().getWindowToken(), 0);
}
return true;
}
return super.dispatchKeyEvent(event);
}
這樣就好了。
如果想改變軟鍵盤右下角按鈕的樣式可以在EditText佈局檔案中加入imeOptions屬性,imeOptions中有很多效果選擇一個你需要的就好了。我列舉幾個常用的,其他的你們自己去試試吧。
actionDone : 確定/完成
actionNone : 回車鍵,按下後游標到下一行
actionSearch : 放大鏡
actionSend : Send 傳送
actionNext : Next 下一步
題外話,如果彈出的軟鍵盤使背景變形了,可以在基類Activity加入下邊這行
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_ADJUST_PAN);
如果進入一個新的Activity就彈出軟鍵盤,影響使用者體驗,可以加入下面這行
getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
ok就醬。不足之處,還希望大家補充。