• 1000 .addOnCompleteListener ...
Когда я создаю абстрактный внутренний класс для onCompleteListener
, он компилируется, но onClick
не запускается, потому что при нажатии кнопки регистрации ничего не происходит, даже сообщение об ошибке. Я определил Toast.makeText(SignUpActivity.this, "Error !" + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
, ничего не происходит: нет звука щелчка, который я слышал бы при нажатии ontextview
, чтобы переключиться на экран входа в систему, или в текстовом режиме, чтобы переключиться обратно на страницу регистрации. Событие не запускается.
Что я делаю не так Я прочитал всю документацию, которую смог найти ...
import android.content.Intent;
import android.os.Bundle;
import android.text.TextUtils;
import android.text.method.LinkMovementMethod;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.ProgressBar;
import android.widget.TextView;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import com.bluribbon.dutchclone.ui.login.LoginActivity;
import com.google.android.gms.tasks.OnCompleteListener;
import com.google.android.gms.tasks.Task;
import com.google.firebase.auth.AuthResult;
import com.google.firebase.auth.FirebaseAuth;
public class SignUpActivity extends AppCompatActivity {
private static final String TAG = "EmailPassword";
private EditText userName, userPhone, userEmail, userPassword, userPasswordConfirm, userCity;
private Button regButton;
private TextView userLogin;
private CheckBox checkBox;
private FirebaseAuth mAuth;
private ProgressBar progressBar;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_signup);
userName = findViewById(R.id.fullName);
userCity = findViewById(R.id.city);
userPhone = findViewById(R.id.phone);
userEmail = findViewById(R.id.emailin);
userPassword = findViewById(R.id.passwordin);
userPasswordConfirm = findViewById(R.id.passwordconfirm);
checkBox = findViewById(R.id.checkBox);
regButton = findViewById(R.id.Register);
userLogin = findViewById(R.id.SignIn);
progressBar = findViewById(R.id.progressBar);
mAuth = FirebaseAuth.getInstance();
TextView login = findViewById(R.id.SignIn);
login.setMovementMethod(LinkMovementMethod.getInstance());
login.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent = new Intent(SignUpActivity.this, LoginActivity.class);
startActivity(intent);
}
});
regButton = findViewById(R.id.Register);
regButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
regButton.setVisibility(View.GONE);
progressBar.setVisibility(View.VISIBLE);
String email = userEmail.getText().toString();
String password = userPassword.getText().toString();
String passwordConfirm = userPasswordConfirm.getText().toString();
String name = userName.getText().toString();
String city = userCity.getText().toString();
String phone = userPhone.getText().toString();
if (mAuth.getCurrentUser() !=null){
startActivity(new Intent(getApplicationContext(), MainActivity.class));
finish();
}
if (TextUtils.isEmpty(email)){
userEmail.setError("Email is Required");
return;
}
if (TextUtils.isEmpty(password)){
userPassword.setError("Password is Required");
return;
}
if (TextUtils.isEmpty(passwordConfirm)){
userPasswordConfirm.setError("Please Confirm Password");
return;
}
if (TextUtils.isEmpty(name)){
userName.setError("Name is Required");
return;
}
if (TextUtils.isEmpty(city)){
userCity.setError("City is Required");
return;
}
if (TextUtils.isEmpty(phone)){
userPhone.setError("Phone is Required");
return;
}
regButton.setVisibility(View.VISIBLE);
progressBar.setVisibility(View.VISIBLE);
mAuth.createUserWithEmailAndPassword(email, password).addOnCompleteListener(this, new onCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
if (task.isSuccessful()){
Toast.makeText(SignUpActivity.this, "Your Dutch Profile Has been Created", Toast.LENGTH_SHORT).show();
startActivity(new Intent(getApplicationContext(), MainActivity.class));
progressBar.setVisibility(View.GONE);
}
else {
Toast.makeText(SignUpActivity.this, "Error !" + task.getException().getMessage(), Toast.LENGTH_SHORT).show();
}
}
});
}
});
}
}