2011-04-29 81 views
3

我有一個edittext名稱說eid ..現在我想要的是儘快用戶輸入eid值..另一個edittext說「oid」現在oid應該自動生成它的值輸出在eid中輸入的值..我應該使用哪些事件來執行上述任務.. plz幫助我在android中很新穎EditText上的事件

+0

如果你能告訴我們該觸發器是什麼,意味着用戶完成輸入的數據,我們可以幫您找到合適的事件。沒有這些知識,我們只能給你你可以選擇的事件的完整列表。 – user432209 2011-04-29 16:52:04

+1

可能出現[更新時和edittext更新時發生什麼事件]的重複問題(http://stackoverflow.com/questions/4893638/what-is-the-event-when-and-edittext-is-updated) – Squonk 2011-04-29 16:54:18

+0

儘快因爲用戶完成輸入eid字段值... oid字段應自動更新與從eid值和一些常數取得的值。 – Adi 2011-04-29 18:16:57

回答

-1

如果您是Android新手,爲什麼不先通過一些教程...您也可以使用按鈕在edittext和當用戶按下該按鈕時,你可以做任何你想要的.....

1

Here是如何獲得「更改」事件在EditText字段的博客文章。一旦你從eid得到價值,就把它扔進oid

1

我認爲你所要求的是一個OnFocusChangeListener。在您的活動一樣,創建一個私有子類:

public MyActivity extends Activity { 

    private class MyFocusChangeListener implements OnFocusChangeListener { 
    private EditText editText; 

    public MyFocusChangeListener(EditText editText) { 
     this.editText = editText; 
    } 

    @Override 
    public void onFocusChange(View view, boolean isFocused) { 
     if (!isFocused) { 
     // View lost focus - now do your stuff 
     } 
    } 
    } 

    @Override 
    public void onCreate(Bundle bundle) { 
    // ... 
    editText.setOnFocusChangeListener(new MyFocusChangeListener(editText)); 
    // ... 
    } 
} 
8

您可以編輯文本使用textWatcher,它會在編輯文本的種種變化,並觸發相應的功能。

eid.addTextChangedListener(new TextWatcher() { 
    public void onTextChanged(CharSequence s, int start, int before, int count) { 

    } 
    public void beforeTextChanged(CharSequence s, int start, int count, int after) { 

    } 

    public void afterTextChanged(Editable s) { 
     // set oid value now 
     oid.setText(eid.getText().toString()); 
    } 
}); 

每當文本將改變「開齋節」方法afterTextChanged的將被調用,它將設置的OID值也。

4

如果你有兩個edittextbox有兩個不同的名字 爲前。 ET1和ET2,那麼你可以將事件寫入處理程序他們像

et1= (EditText) findViewById(R.id.EditText01); 
et2= (EditText) findViewById(R.id.editText1); 


et1.addTextChangedListener(new TextWatcher() { 
    public void onTextChanged(CharSequence s, int start, int before, int count) { 


    } 
    public void beforeTextChanged(CharSequence s, int start, int count, int after) { 

    } 

    public void afterTextChanged(Editable s) { 

    } 
}); 


et2.addTextChangedListener(new TextWatcher() { 

    public void onTextChanged(CharSequence s, int start, int before, int count) { 
     // TODO Auto-generated method stub 

    } 

    public void beforeTextChanged(CharSequence s, int start, int count, 
      int after) { 
     // TODO Auto-generated method stub 
    } 

    public void afterTextChanged(Editable s) { 
     // TODO Auto-generated method stub 

    } 
}); 
+0

這將適用於像檢查兩個電子郵件或密碼字段匹配以確保用戶輸入它正確地進行驗證。 – 2013-06-07 16:08:45