2012-02-05 53 views
1
myEdit1.setOnKeyListener(new OnKeyListener() { 
      public boolean onKey(View v, int keyCode, KeyEvent event) { 
       myEdit2.setText(""); 
       return false; 
      } 
     }); 

return false,一切都很順利。但是如果我更改爲return true,那麼這裏有一些不協調的東西。我不能刪除字符,也不能使用退格鍵。我想知道,在哪種情況下,我應該使用return true還是return false? 任何幫助表示讚賞。一些例子更好:)當我調用OnFocusChangeListener.onFocusChange()函數時,應該返回什麼?

回答

1

Return true以防止此事件進一步傳播,或false表示您尚未處理此事件,它應繼續傳播。

  • 返回True:如果您處理了該事件,則始終返回true。並且不希望該操作系統做額外的事情。
  • 返回false:如果您未處理該事件並希望OS處理它,則返回false。

在你的情況,當你return true,事件的默認行爲沒有執行,因爲事件沒有進一步傳播。它認爲你已經處理了這個事件。當您return false時,事件會進一步傳播並執行默認行爲。因爲false表示您尚未處理事件

相關問題