Так что, когда вы пытаетесь зарегистрироваться, все работает отлично, когда пользователь регистрируется, он показывает toast, что пользователь успешно создал, а также показывает, что username уже существует. Как я могу запретить показывать тост, что имя пользователя уже существует, когда пользователь создает свою учетную запись, я думаю, что это проблема на onDataChange, потому что он всегда проверяет это имя пользователя, есть ли способ сделать это лучше, я новичок в android , Вот мой класс регистрации.
btnRegister.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if(Common.isConnectedToInternet(getBaseContext())) {
table_user.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
//Check if already exist username
if(dataSnapshot.child(edtUsername.getText().toString()).exists()) {
Toast.makeText(Register.this, "Username already exists", Toast.LENGTH_SHORT).show();
} else {
User user =
new User(edtUsername.getText().toString(),
edtPassword.getText().toString());
table_user.child(edtUsername.getText().toString()).setValue(user);
Toast.makeText(Register.this, "Successfully Registration", Toast.LENGTH_SHORT).show();
finish();
}
}