android - 无法在 addTextChangedListener() 中更新 View

标签 android android-edittext

我正在尝试根据 EditText 中文本的长度来编辑 Button 的背景。如果文本的长度为 0,那么背景应该是半透明的,否则它应该是不透明的。但是,我无法动态更新按钮的背景。如果我点击屏幕上的其他地方,按钮的背景就会更新,但不是实时的。

这是我正在使用的代码。

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);
            }


        }

    });

我们将不胜感激任何帮助。

最佳答案

请在设置值后调用

    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.invalidate();

    }

关于android - 无法在 addTextChangedListener() 中更新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15426095/

相关文章:

java - 在 >=23 中膨胀类 Seekbar 时出错

android - Android 上的蓝牙发现 - 有没有办法知道附近是否有蓝牙设备?

android - 在 Android 中编辑 EditText 上下文菜单

java - 查找并检查编辑文本中的最后 4 个字符

java - 如何忽略空的EditText?

c# - 使用存储访问框架在 Google Drive 上存储文件

android - 使用android ndk编译ffmpeg时如何保持兼容性

android - 创建每个键具有多个/交替字符的软键盘

android - 关闭 EditText 的自动建议?

android - 在 Android 中一起使用 textAutoCorrect 和 textAutoComplete