Java 如果出现“错误”,请停止操作;。“设置错误”;遭遇
这是我的android代码,这是一个注册页面,上面有“姓名”、“手机号码”、“电子邮件”、“密码”、“确认密码”,我为任何editText添加了setError方法,但结果是当我点击“注册”按钮时,android会显示错误消息,但它从不等待用户,它直接对注册按钮执行OnClick操作 我需要的是,当用户点击“注册”时,它应该检查空白区,如果有空格,OnClick操作不应该继续。< /P> 以下是我的android代码:Java 如果出现“错误”,请停止操作;。“设置错误”;遭遇,java,android,Java,Android,这是我的android代码,这是一个注册页面,上面有“姓名”、“手机号码”、“电子邮件”、“密码”、“确认密码”,我为任何editText添加了setError方法,但结果是当我点击“注册”按钮时,android会显示错误消息,但它从不等待用户,它直接对注册按钮执行OnClick操作 我需要的是,当用户点击“注册”时,它应该检查空白区,如果有空格,OnClick操作不应该继续。< /P> 以下是我的android代码: @Override protected void onCreate(
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signup);
final EditText etName = (EditText) findViewById(R.id.etName);
final EditText etEmail = (EditText) findViewById(R.id.etEmail);
final EditText etMobileNo = (EditText) findViewById(R.id.etMobileNo);
final EditText etPassword = (EditText) findViewById(R.id.etPassword);
final EditText etConfirmPassword = (EditText) findViewById(R.id.etConfirmPassword);
final Button bSignUp = (Button) findViewById(R.id.bSignUp);
bSignUp.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
name = etName.getText().toString;
email = etEmail.getText().toString();
mobile = etMobileNo.getText().toString();
password = etPassword.getText().toString();
confirmpassword = etConfirmPassword.getText().toString();
CheckMissing(); //Check for Missing entries and Password Matches.
Response.Listener<String> responseListener = new Response.Listener<String>() {
private ProgressDialog loading;
@Override
public void onResponse(String response) {
try {
JSONObject jsonResponse = new JSONObject(response);
boolean success = jsonResponse.getBoolean("success");
loading = ProgressDialog.show(SignupActivity.this, "Thank You...", "Registering Now...", false, false);
if (success) {
loading.dismiss();
Intent intent = new Intent(SignupActivity.this, LoginActivity.class);
SignupActivity.this.startActivity(intent);
} else {
AlertDialog.Builder builder = new AlertDialog.Builder(SignupActivity.this);
builder.setMessage("Register Failed")
.setNegativeButton("Retry", null)
.create()
.show();
}
} catch (JSONException e) {
e.printStackTrace();
}
}
};
SignupRequest signupRequest = new SignupRequest(name, email, mobile, password, responseListener);
RequestQueue queue = Volley.newRequestQueue(SignupActivity.this);
queue.add(signupRequest);
}
});
}
public void CheckMissing() {
EditText name = (EditText) findViewById(R.id.etName);
if (name.getText().toString().isEmpty()) {
name.setError("You need to enter name");
}
EditText email = (EditText) findViewById(R.id.etEmail);
if (email.getText().toString().isEmpty()) {
email.setError("You need to enter Email");
}
EditText mobile = (EditText) findViewById(R.id.etMobileNo);
if (mobile.getText().toString().isEmpty()) {
mobile.setError("You need to enter mobile");
}
EditText password = (EditText) findViewById(R.id.etPassword);
String Pass = password.getText().toString();
if (password.getText().toString().isEmpty()) {
password.setError("You need to enter password");
}
EditText confirmpassword = (EditText) findViewById(R.id.etConfirmPassword);
String Conpass = confirmpassword.getText().toString();
if (confirmpassword.getText().toString().isEmpty()) {
confirmpassword.setError("You need to enter confirmpassword");
}
if (!Pass.equals(Conpass)) {
confirmpassword.setError("Password Doesnt Match");
}
}
}
@覆盖
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity\u注册);
最终EditText etName=(EditText)findViewById(R.id.etName);
最终的EditText-etEmail=(EditText)findViewById(R.id.etEmail);
最终编辑文本etMobileNo=(编辑文本)findViewById(R.id.etMobileNo);
最终EditText etPassword=(EditText)findViewById(R.id.etPassword);
最终EditText etConfirmPassword=(EditText)findViewById(R.id.etConfirmPassword);
最终按钮bSignUp=(按钮)findViewById(R.id.bSignUp);
bSignUp.setOnClickListener(新视图.OnClickListener(){
@凌驾
公共void onClick(视图v){
name=etName.getText().toString;
email=etEmail.getText().toString();
mobile=etMobileNo.getText().toString();
password=etPassword.getText().toString();
confirmpassword=etConfirmPassword.getText().toString();
CheckMissing();//检查缺少的条目和密码匹配。
Response.Listener responseListener=新的Response.Listener(){
私有对话框加载;
@凌驾
公共void onResponse(字符串响应){
试一试{
JSONObject jsonResponse=新的JSONObject(响应);
boolean success=jsonResponse.getBoolean(“success”);
loading=ProgressDialog.show(SignupActivity.this,“谢谢…”,“立即注册…”,false,false);
如果(成功){
loading.dispose();
意向意向=新意向(SignupActivity.this、LoginActivity.class);
注册活动。此。startActivity(意图);
}否则{
AlertDialog.Builder=新建AlertDialog.Builder(SignupActivity.this);
builder.setMessage(“注册失败”)
.setNegativeButton(“重试”,null)
.create()
.show();
}
}捕获(JSONException e){
e、 printStackTrace();
}
}
};
SignupRequest SignupRequest=新的SignupRequest(姓名、电子邮件、手机、密码、应答者);
RequestQueue=Volley.newRequestQueue(SignupActivity.this);
添加(signupRequest);
}
});
}
public void CheckMissing(){
EditText名称=(EditText)findViewById(R.id.etName);
if(name.getText().toString().isEmpty()){
name.setError(“您需要输入名称”);
}
EditText电子邮件=(EditText)findViewById(R.id.etEmail);
if(email.getText().toString().isEmpty()){
setError(“您需要输入电子邮件”);
}
EditText mobile=(EditText)findViewById(R.id.etMobileNo);
if(mobile.getText().toString().isEmpty()){
setError(“您需要输入mobile”);
}
EditText密码=(EditText)findViewById(R.id.etPassword);
字符串Pass=password.getText().toString();
if(password.getText().toString().isEmpty()){
password.setError(“您需要输入密码”);
}
EditText confirmpassword=(EditText)findViewById(R.id.etConfirmPassword);
字符串Conpass=confirmpassword.getText().toString();
if(confirmpassword.getText().toString().isEmpty()){
setError(“您需要输入confirmpassword”);
}
如果(!Pass.equals(Conpass)){
confirmpassword.setError(“密码不匹配”);
}
}
}
转换CheckMissing()
以返回布尔值,例如:
public boolean isMissingFields(){...}
然后,在onClick
方法中,您可以将CheckMissing()
更改为:
if(isMissingFields()) return;
转换CheckMissing()
以返回布尔值,例如:
public boolean isMissingFields(){...}
然后,在onClick
方法中,您可以将CheckMissing()
更改为:
if(isMissingFields()) return;
在
CheckMissing()
中添加布尔返回类型:
然后在“注册”按钮的OnClickListener中:
if (!CheckMissing())
return;
在
CheckMissing()
中添加布尔返回类型:
然后在“注册”按钮的OnClickListener中:
if (!CheckMissing())
return;