1. 程式人生 > >(轉)Android 軟鍵盤監聽回車不起作用

(轉)Android 軟鍵盤監聽回車不起作用

1. imeOptions

<EditText android:imeOptions="actionSend"/> 
                 或
mEditText.setImeOptions(EditorInfo.IME_ACTION_SEND);   

2. setOnKeyListener

chatEditContent.setOnKeyListener(new View.OnKeyListener() {
   @Override
   public boolean onKey(View v, int keyCode, KeyEvent event) {
       if (event != null && KeyEvent.KEYCODE_ENTER == keyCode && KeyEvent.ACTION_DOWN == event.getAction()) {
           // 此處來點freestyle~
           return true;
       }
       return false;
   }
});

3. dispatchKeyEvent

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
    
   if (isPressEnterSendMsg && event.getAction() == KeyEvent.ACTION_DOWN &&
           event.getKeyCode() == KeyEvent.KEYCODE_ENTER) {
       // 此處來點freestyle~
       return true;
   }
    return super.dispatchKeyEvent(event);
}

4. onEditorAction (點贊)

chatEditContent.setOnEditorActionListener(new TextView.OnEditorActionListener() {

   @Override
   public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
       if (actionId == EditorInfo.IME_ACTION_SEND
               || actionId == EditorInfo.IME_ACTION_DONE
               || (event != null && KeyEvent.KEYCODE_ENTER == event.getKeyCode() && KeyEvent.ACTION_DOWN == event.getAction())) {
           // 此處來點freestyle~
       }
       return true;
   }
});

等等,這些方法已經被用爛了:)

為啥還寫