I'm trying to place some code inside AlertDialog.Builder
's builder.setPositiveButton
method.
The problem is that I'm getting the following error: Cannot resolve method 'addOnCompletionListener(anonymous android.content.DialogInterface.OnClickListener, anonymous com.google.android.gms.tasks.OnCompletionListener<com.google.firebase.auth.AuthResult>)
Here's the code:
AlertDialog.Builder builder = new AlertDialog.Builder(SignUpActivity.this);
builder.setTitle("Title");
builder.setView(R.layout.customlayout);
builder.setPositiveButton("Continue", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialogInterface, int i) {
//error from below line
mAuth.createUserWithEmailAndPassword(userEmail.getText().toString(), userPassword.getText().toString())
.addOnCompleteListener(this, new OnCompleteListener<AuthResult>() {
@Override
public void onComplete(@NonNull Task<AuthResult> task) {
Log.d("signUpSuccessful", "createUserWithEmail:onComplete:" + task.isSuccessful());
// If sign in fails, display a message to the user. If sign in succeeds
// the auth state listener will be notified and logic to handle the
// signed in user can be handled in the listener.
if (!task.isSuccessful()) {
Snackbar snackbar = Snackbar
.make(coordinatorLayout, "Sign up failed. Please retry.", Snackbar.LENGTH_SHORT);
snackbar.show();
}
// ...
}
});
//upto this line
}
});
AlertDialog dialog = builder.create();
dialog.show();
What's wrong here?
Please let me know.
addOnCompleteListener(this, new OnCompleteListener<AuthResult>()
"this" in this line means your DialogInterface.OnClickListener , you should check what kind of params this method needs, if Context, try to change it to this
addOnCompleteListener(YourActivityName.this, new OnCompleteListener<AuthResult>()
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With