我想在点击注册按钮上注册然后在注册新用户后返回登录屏幕。因为我正在使用
@Override
public void onClick(View v) {
username = eusername.getText().toString();
email = eemail.getText().toString();
mobile = emobile.getText().toString();
password = epassword.getText().toString();
registerViews();
if(Validations.hasNoChars(username) && Validations.isEmail(email) && Validations.isMobileNumber(mobile) && Validations.isNotEmpty(password))
{
new CreateUser().execute();
Toast.makeText(RegisterActivity.this, "User Registered", Toast.LENGTH_LONG).show();
//RegisterActivity.this.finish();
}
else{
Toast.makeText(RegisterActivity.this, "Fields are empty", Toast.LENGTH_LONG).show();
}
finish();
}
由此切换到登录屏幕,但应用程序关闭。我不知道我做错了什么。
答案 0 :(得分:1)
if(Validations.hasNoChars(username) && Validations.isEmail(email) && Validations.isMobileNumber(mobile) && Validations.isNotEmpty(password))
{
new CreateUser().execute();
Toast.makeText(RegisterActivity.this, "User Registered", Toast.LENGTH_LONG).show();
Intent it=new Intent(this,login.class);
startActivity(it);
}
尝试执行此操作是您的Async成功执行,它会将您转移到登录活动。
答案 1 :(得分:1)
put finish();在onPostExecute()
的AsyncTask CreateUser()中答案 2 :(得分:0)
无需再次启动登录活动。您必须在开始注册活动时完成登录活动。在开始注册活动时不要使用finish()方法。