填写一些edittext后如何启用按钮

时间:2015-12-24 11:06:26

标签: android android-edittext android-button

我有一些文字字段。我想在所有文本字段中输入值后启用提交按钮。我试过了。任何人都可以建议做什么! 这是我将其写入onCreate方法的代码。

        confrimPasswordButton.setEnabled(false);
        passCheck = confirmPasswordText.getText().toString();
        passwordNew = newPasswordText.getText().toString();
        passwordExist = exstingPasswordText.getText().toString();

3 个答案:

答案 0 :(得分:2)

您应该实施TextWatcher。选择最适合您的三种界面方法之一,并将您的实施方式传递给EditTextaddTextChangedListener()。如果您坚持实施 - 互联网上有很多关于如何实施TextWatcher的资源。

答案 1 :(得分:0)

TextWatcher添加到您的EditText

passwordEditText.addTextChangedListener(passwordWatcher);

以下是passwordWatcher

private TextWatcher passwordWatcher = new TextWatcher() {
    public void beforeTextChanged(CharSequence s, int start, int count, int after) {

    }

    public void onTextChanged(CharSequence s, int start, int before, int count) {
     if(//password matches with value of edittext){

        button.setVisibility(View.VISIBLE); // Make your button visible
          }
    }

    public void afterTextChanged(Editable s) {
        if (s.length() == 0) {
            button.setVisibility(View.GONE);
        } else{
            //code to show some some error
        }
    }
};

}

注意:按照模式,复制和粘贴可能会导致一些错误,因为我没有检查代码。

答案 2 :(得分:0)

检查以下解决方案

    passwordExist.addTextChangedListener(new TextWatcher() {

    @Override
    public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {            

    }
        @Override
    public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
                    int arg3) {             
    }
    @Override
    public void afterTextChanged(Editable et) {

      if((passwordExist.getText().length()>0)
      {
       button.setVisibility(View.GONE); ///PERFROM ACTION WHAT EVER YOU WANT TO DO WHEN EDIT TEXT LENGTH GREATER THAN 0
      }
      else{
       button.setVisibility(View.VISIBLE);///PERFROM ACTION WHAT EVER YOU WANT TO DO WHEN EDIT TEXT LENGTH EQUAL TO 0
     }

    }
});