1
我试图编辑一个按钮的背景,具体取决于EditText中文本的长度。如果文本的长度为0,则背景应该是半透明的,否则应该是不透明的。但是,我无法动态更新Button的背景。如果我点击屏幕上的其他位置,则会更新按钮的背景,但不会实时更新。无法更新addTextChangedListener()中的视图
这是我使用的代码。
emailEditText.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) {
if(s.length()!=0){
submitEmail.getBackground().setAlpha(255);
}
else{
submitEmail.getBackground().setAlpha(45);
}
}
});
任何帮助将不胜感激。
你试过submitEmail.requestLayout() – Naveen 2013-03-15 06:28:23
试试这个:http://stackoverflow.com/a/8643545/450534。这不是在“TextWatcher”中设置Alpha的解决方案,而是用于设置Alpha本身。 – 2013-03-15 06:33:27
谢谢纳文。我尝试过'submitEmail.requestLayout()',但它不能帮助我解决问题。 – 2013-03-15 06:36:40