我需要知道如何在不按下按钮的情况下从编辑文本字段中获取值。即,一旦用户在第一个文本字段中输入值或编辑文本以具体化,我需要更改另一个文本字段的内容。有什么方法吗..??
问问题
221 次
3 回答
4
当您更改或添加文本时,您可以使用 TextWatcher 来调用此侦听器,以便在您获得事件的每个输入文本上都可以更改另一个文本或按钮的值。
et1.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
于 2013-09-09T10:03:53.297 回答
0
Java 是面向对象的语言,您需要记住您所指的事件。如果是按钮(您不想要),则在按下按钮时您正在做某事。
因此,您要查找的是与您正在编辑的 EditText 相关的事件。
anddevmanu写的是EditText的事件。所以如果你有
//creating Edit text;
EditText youEditText;
//connecting to the xml layout
youEditText = (EditText)findViewById(R.id.yourEditTestID);
yourEditText.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// Perform your action when the text is changed
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// Perform your action after the text is changed
}
})
;
于 2013-09-09T10:20:22.787 回答
0
试试这个代码
EditText e=new EditText(getApplicationContext());
e.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
// TODO Auto-generated method stub
//your code.......
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
}
});
于 2013-09-09T10:53:51.673 回答