Android应用程序开发帮助:输入数据后立即执行操作
我曾在Android上看到过一个应用程序,当一个人在文本框中输入任何内容时,另一个显示输出的文本框会自动改变,而无需按下任何按钮或任何东西。我想知道如何为Android应用程序做到这一点。您可以Android应用程序开发帮助:输入数据后立即执行操作,android,Android,我曾在Android上看到过一个应用程序,当一个人在文本框中输入任何内容时,另一个显示输出的文本框会自动改变,而无需按下任何按钮或任何东西。我想知道如何为Android应用程序做到这一点。您可以将文本更改列表添加到您的EditText中,并使用onTextChanged函数更改其他EditText中的文本。您可以将文本更改列表添加到您的EditText中,并使用onTextChanged函数更改其他EditText中的文本EditText。您可以通过添加到EditText来完成此操作。对用户在P
将文本更改列表添加到您的EditText中,并使用onTextChanged
函数更改其他EditText中的文本。您可以将文本更改列表添加到您的EditText中,并使用onTextChanged
函数更改其他EditText中的文本EditText。您可以通过添加到EditText来完成此操作。对用户在PostTextChanged
中输入的数据执行所有操作,因为此方法在用户停止键入Edittext时调用
EditText edttext = (EditText)findViewById(R.id.edttext);
edttext.addTextChangedListener(textChecker);
TextWatcher textChecker = new TextWatcher() {
public void afterTextChanged(Editable s) {
//set text to other Views
}
};
有关如何使用TextWatcher的示例,请参见。您可以通过添加到EditText来完成此操作。对用户在PostTextChanged
中输入的数据执行所有操作,因为此方法在用户停止键入Edittext时调用
EditText edttext = (EditText)findViewById(R.id.edttext);
edttext.addTextChangedListener(textChecker);
TextWatcher textChecker = new TextWatcher() {
public void afterTextChanged(Editable s) {
//set text to other Views
}
};
查看示例了解如何使用TextWatcher,这里ed是EditText,我认为,这段代码达到了您的预期。请尝试这段代码
ed.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int end) {
// TODO Auto-generated method stub
//tv.setText(s.toString());
if(s.length()==1){
String get=s.toString();
tv.setText(s.toString());
tv.startAnimation(mytrans);
mytrans.reset();
}else if(s.length()==2){
tv1.setText(s.subSequence(1,2));
tv1.startAnimation(myanim);
}else if(s.length()==3){
tv2.setText(s.subSequence(2, 3));
tv2.startAnimation(mytrans);
}else if(s.length()==4){
tv3.setText(s.subSequence(3, 4));
tv3.startAnimation(myalpha);
}else if(s.length()==5){
tv4.setText(s.subSequence(4, 5));
tv4.startAnimation(myanim1);
}else{
tv.setText(s.toString());
ObjectAnimator animation2 = ObjectAnimator.ofFloat(tv,"translationX",180);
animation2.setDuration(2000);
animation2.start();
ObjectAnimator animation3 = ObjectAnimator.ofFloat(tv,"translationY",100);
animation3.setDuration(2000);
animation3.start();
ObjectAnimator animation4 = ObjectAnimator.ofFloat(tv,"rotation",360);
animation4.setDuration(2000);
animation4.start();
ib.startAnimation(myanim);
ib1.startAnimation(myanim1);
tv.startAnimation(mytrans);
}
/*if(s.length()==6){
ib.requestFocus();
}*/
}
@Override
public void beforeTextChanged(CharSequence s, int start, int end,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
/*ib.startAnimation(myanim);
ib1.startAnimation(myanim1);
tv.startAnimation(mytrans); */
}
});
这是EditText,我想,这段代码达到了你的预期。试试这段代码
ed.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int end) {
// TODO Auto-generated method stub
//tv.setText(s.toString());
if(s.length()==1){
String get=s.toString();
tv.setText(s.toString());
tv.startAnimation(mytrans);
mytrans.reset();
}else if(s.length()==2){
tv1.setText(s.subSequence(1,2));
tv1.startAnimation(myanim);
}else if(s.length()==3){
tv2.setText(s.subSequence(2, 3));
tv2.startAnimation(mytrans);
}else if(s.length()==4){
tv3.setText(s.subSequence(3, 4));
tv3.startAnimation(myalpha);
}else if(s.length()==5){
tv4.setText(s.subSequence(4, 5));
tv4.startAnimation(myanim1);
}else{
tv.setText(s.toString());
ObjectAnimator animation2 = ObjectAnimator.ofFloat(tv,"translationX",180);
animation2.setDuration(2000);
animation2.start();
ObjectAnimator animation3 = ObjectAnimator.ofFloat(tv,"translationY",100);
animation3.setDuration(2000);
animation3.start();
ObjectAnimator animation4 = ObjectAnimator.ofFloat(tv,"rotation",360);
animation4.setDuration(2000);
animation4.start();
ib.startAnimation(myanim);
ib1.startAnimation(myanim1);
tv.startAnimation(mytrans);
}
/*if(s.length()==6){
ib.requestFocus();
}*/
}
@Override
public void beforeTextChanged(CharSequence s, int start, int end,
int after) {
// TODO Auto-generated method stub
}
@Override
public void afterTextChanged(Editable s) {
// TODO Auto-generated method stub
/*ib.startAnimation(myanim);
ib1.startAnimation(myanim1);
tv.startAnimation(mytrans); */
}
});