2015-05-26 52 views
0

我使用以下代碼在按下輸入後清除編輯文本,但它不起作用。如何在輸入按下後在edittext中清除字符

inText.setOnKeyListener(this); 
@Override 
public boolean onKey(View v, int keyCode, KeyEvent event) { 
    if ((event.getAction() == KeyEvent.ACTION_DOWN)) { 
     if (keyCode == KeyEvent.KEYCODE_ENTER) { 
      inText.setText(""); 
     } 
     return true; 
    } 
    return false; 
} 
+0

是您的語句,返回真的嗎? –

+0

輸入意味着點擊? – nifCody

+0

在觸摸屏上輸入 – bharani

回答

0

您應該檢查是否實際調用了onKey方法,並且傳遞了哪些鍵碼。根據EditText的輸入類型,可能會生成與KEYCODE_ENTER不同的事件。你也可以嘗試使用OnEditorActionListener而不是OnKeyListener。

0

試試這個:

inText.setOnEditorActionListener(new TextView.OnEditorActionListener() { 
     @Override 
     public boolean onEditorAction(TextView v, int actionId, KeyEvent event) { 
      if (actionId == EditorInfo.IME_ACTION_DONE) { 
       inText.setText(""); 
      } 
      return false; 
     } 
    }); 
+0

EditorInfo.IME_ACTION_DONE用於輸入 – Akariuz