2013-02-07 27 views
-1

在我的程序中,我使用了許多動態創建的EditText,並且每當它們中的任何一個發生變化時(失去焦點),我都需要調用方法。是否有可能做這樣的事情? 否則如何使焦點丟失\更改列表爲所有視圖?如果任何EditText焦點發生變化

回答

1

您需要爲EditText設置View.setOnFocusChangeListener以偵聽焦點更改。

例如:

View.OnFocusChangeListener editTextFocusChnage= 
            new View.OnFocusChangeListener() { 

    @Override 
    public void onFocusChange(View v, boolean hasFocus) { 
     swich(v.getId()){ 
     case Edittext1_id: 
      // do your work here.. 
       break; 
     case Edittext2_id: 
      // do your work here.. 
      break; 
     case Edittext3_id: 
      // do your work here.. 
      break; 
      .....   

     } 
    } 
}; 

其中Edittext1_id,Edittext2_id,....是動態的EditText ID的

編輯: -

添加FocusChangeListener到的EditText的爲:

editText1.setOnFocusChangeListener(editTextFocusChnage); 
    editText2.setOnFocusChangeListener(editTextFocusChnage); 
    editText3.setOnFocusChangeListener(editTextFocusChnage); 
    ..... 
+0

我真的沒有得到這個,但無論如何,我已將此添加到我的課: View.OnFocusChangeListener ETCL =新View.OnFocusChangeListener(){\t \t \t @覆蓋 \t \t公共無效onFocusChange(查看V,布爾hasFocus) { \t \t \t // TODO自動生成方法存根 \t \t \t Toast.makeText(getApplicationContext(), 「聚焦改變」,Toast.LENGTH_LONG).show(); \t \t \t GetCount(); \t \t} \t}; 它不會做任何事情..我做錯了什麼? – CVS

+0

我只是嘗試,如果焦點改變,無所謂的視圖。 – CVS

+0

@CVS:Plz看到我的編輯答案 –