Android 如果计数>1,TextWatcher停止
当用户输入字符数>1时,我尝试显示/设置TextView的动画。但每次我更改文本时,TextView动画都会重复设置动画 如果计数大于1,是否有任何方法可以使其冻结,如果计数小于0,是否可以再次重新设置动画淡出Android 如果计数>1,TextWatcher停止,android,Android,当用户输入字符数>1时,我尝试显示/设置TextView的动画。但每次我更改文本时,TextView动画都会重复设置动画 如果计数大于1,是否有任何方法可以使其冻结,如果计数小于0,是否可以再次重新设置动画淡出 fName.addTextChangedListener(new TextWatcher() { @Override public void onTextChanged(CharSequence s, int start, int before, i
fName.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(count > 1) {
firstNameTV.startAnimation(in);
firstNameTV.setVisibility(View.VISIBLE);
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged (Editable s){
// TODO Auto-generated method stub
}
});
请尝试以下代码:
boolean flagAnimate=false;
fName.addTextChangedListener(new TextWatcher() {
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
if(count >= 1 && !flagAnimate) {
firstNameTV.startAnimation(in);
firstNameTV.setVisibility(View.VISIBLE);
flagAnimate= true;
} else if(count == 0){
firstNameTV.startAnimation(out);
firstNameTV.setVisibility(View.INVISIBLE);
flagAnimate= false;
}
}
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void afterTextChanged (Editable s){
// TODO Auto-generated method stub
}
});
此代码可解决您的问题: 祝贺你。如果我的回答对你有用,请让我放弃投票。谢谢