2015-06-28 69 views
0

我希望能夠檢測到edittext沒有被點擊時,所以我可以用textview替換它。我試過如何檢測Edittext是否失去焦點?

et.setOnFocusChangeListener(new OnFocusChangeListener() { 

      @Override 
      public void onFocusChange(View v, boolean hasFocus) { 
       if(!v.hasFocus()){ 
        Toast.makeText(getApplicationContext(), "LOST FOCUS", Toast.LENGTH_SHORT).show(); 
       } 
      } 
     }); 

但Toast消息不會被調用。

+0

Duplicate:http://stackoverflow.com/questions/10627137/how-can-i-know-when-a-edittext-lost-focus – Sharj

+0

你有!v.hasFocus();試試看!hasFocus。 – Sharj

回答

0

您應該使用提供布爾VAR:

if(!hasFocus){ 

當你的回調,這可能是因爲認爲仍然集中,所以v.hasFocus()可能返回true。

+0

我試過這個,但是當我點擊edittext時,它仍然不會調用Toast消息。 – NathanWick

+0

在這種情況下,你應該多展示一下你的代碼,否則它看起來很好。 – wvdz