Кнопка Firebase onClick, установить UID дочерний - PullRequest
0 голосов
/ 18 октября 2018

У меня проблема с Firebase !, я создал страницу регистрации и входа и отлично работает !.но у меня есть проблема. почему моя кнопка создает нового «ребенка»? Как я могу поставить кнопку «onClick» на тот же UID, чтобы идентифицировать пользователей по нажатию кнопки? Что я хочу сделать , я не знаю, как работает firebase 100% кто-нибудь может мне объяснить?мне действительно нужно, чтобы {get} нажимал кнопки для идентификации каждого пользователя в базе данных. Кнопка «Моя страница»

MainActivity

public class MainActivity extends AppCompatActivity {
private Button influenciador;
private Button marca;

private DatabaseReference mDatabase;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);


    influenciador = (Button) findViewById(R.id.BotaoSouInfluenciador);
    marca = (Button) findViewById(R.id.BotaoSouMarca);

    mDatabase = FirebaseDatabase.getInstance().getReference().child("Usuários");

    influenciador.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            mDatabase.child("Usuários").push().setValue("Pizza");
            openDIContrato();
        }
    });

    marca.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            mDatabase.child("Usuários").setValue("Burger");

            openMarcaContrato();
        }
    });
  }
public void openDIContrato() {
    Intent intent = new Intent(this, DIContrato.class);
    startActivity(intent);
  }

public void openMarcaContrato() {
    Intent intent = new Intent(this, MarcaContrato.class);
    startActivity(intent);
 }
}

Класс пользователей

public class Usuarios {

private String id;
private String email;
private String aniversario;
private String senha;
private String nome;
private String sexo;

public Usuarios() {
}

public void salvar(){
    DatabaseReference referenciaFirebase = ConfiguracaoFirebase.getFirebase();
    referenciaFirebase.child("Usuários").child(String.valueOf(getId())).setValue(this);
}

@Exclude

public Map<String, Object> toMap(){
    HashMap<String, Object> hashMapUsuario = new HashMap<>();
    hashMapUsuario.put("id", getId());
    hashMapUsuario.put("email", getEmail());
    hashMapUsuario.put("aniversario", getAniversario());
    hashMapUsuario.put("nome", getnome());
    hashMapUsuario.put("sexo", getSexo());

    return hashMapUsuario;
}

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getEmail() {
    return email;
}

public void setEmail(String email) {
    this.email = email;
}

public String getSenha() {
    return senha;
}

public void setSenha(String senha) {
    this.senha = senha;
}

public String getnome() {
    return nome;
}

public void setnome(String nome) {
    this.nome = nome;
}

public String getAniversario() {
    return aniversario;
}

public void setAniversario(String aniversario) {
    this.aniversario = aniversario;
}

public String getSexo() {
    return sexo;
}

public void setSexo(String sexo) {
    this.sexo = sexo;
 }
}

1 Ответ

0 голосов
/ 18 октября 2018

Вы не используете правильную ссылку на вашу базу данных.Из изображения с заголовком «что я хочу сделать» вы можете сделать это с помощью следующего фрагмента кода:

DatabaseReference ref = FirebaseDatabase.getInstance().getReference().child("Usuários");

ref.child(iD).child("Button").setValue("Pizza");

//id is the string I can see in the databse image dG9ue...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...