嗨,我想獲得編輯文本,當前焦點在按鈕點擊,有任何按鈕來做到這一點。如何在android中關注edittext?
或者如果活動中有許多編輯文本,就有辦法確定哪個edittext最後被修改過。
請建議我使用可用的鏈接或示例代碼。
嗨,我想獲得編輯文本,當前焦點在按鈕點擊,有任何按鈕來做到這一點。如何在android中關注edittext?
或者如果活動中有許多編輯文本,就有辦法確定哪個edittext最後被修改過。
請建議我使用可用的鏈接或示例代碼。
我採取線性佈局,並添加自定義EditText到它。
LayoutInflater li = (LayoutInflater) this.getSystemService(LAYOUT_INFLATER_SERVICE);
for(int i = 0; i < 3; i++) {
View v = li.inflate(R.layout.addit, null);
final EditText e = (EditText) v.findViewById(R.id.e1);
e.addTextChangedListener(new TextWatcher() {
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
public void beforeTextChanged(CharSequence s, int start,
int count, int after) {
// TODO Auto-generated method stub
}
public void onTextChanged(CharSequence s, int start,
int before, int count) {
// TODO Auto-generated method stub
System.out.println("--change--");
mEditText = e;
System.out.println(e.getText().toString());
}
});
edit_ll.addView(v);
}
這裏mEditText是一個全局變量。
您活動中的任何地方都可以訪問它。並且可以獲取您寫入的最後一個editText。
您可以將textWatcher添加到所有EditTexts:
private class CustomTextWatcher implements TextWatcher {
private EditText mEditText;
public CustomTextWatcher(EditText e) {
mEditText = e;
}
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
public void afterTextChanged(Editable s) {
}
}
,並可以有你的類的全局變量包含EDITTEXT參考,正在編輯。
請建議我如何添加您的CustomerTextWatcher來編輯文本最終EditText tv = new EditText(getContext()); – 2012-01-31 11:55:02
謝謝,爲我工作。 – 2012-01-31 12:25:57
謝謝,很好的例子。 – 2012-01-31 12:25:35