如何将edittext用户名放入.whereequalto消防商店?

1mrurvl1  于 2021-06-29  发布在  Java
关注(0)|答案(1)|浏览(282)

作为一名管理员,我如何通过键入用户名(/naam)来查找另一个用户,并将其“tegoed”投影/设置到textview中?
[编辑:当我在whereequalto硬编码为“anne”时,我确实得到了一个textview,但是我不知道如何使用edittext来完成这个任务,在这里我可以填写某人的名字]
我的firestore是这样构建的,现在两个字段都是字符串。但测试后的数字将是数字

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

    Naamtgd = findViewById(R.id.etNaamtgd);
    Tegoed = findViewById(R.id.etTgd);
    tvTegoed = findViewById(R.id.tvTgd);
    btnZoek = findViewById(R.id.btnZoek);
    btnVulAan = findViewById(R.id.btnVulAan);
    btnTerug = findViewById(R.id.btnTerug);
    NAAM = Naamtgd.getText().toString();
    mAuth = FirebaseAuth.getInstance();
    fStore = FirebaseFirestore.getInstance();

    btnZoek.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {

            fStore.collection("Gebruikers")
                    .whereEqualTo("Naam", "Anne")
                    .get()
                    .addOnCompleteListener(task -> {
                        if (task.isSuccessful()) {
                            Toast.makeText(Tegoedaanvullen.this, "Gelukt?", Toast.LENGTH_SHORT).show();

                            for (QueryDocumentSnapshot document : task.getResult()) {
                             tvTegoed.setText(document.getString("Tegoed"));

                            }
                        }
                        else{
                            Toast.makeText(Tegoedaanvullen.this, "Mislukt", Toast.LENGTH_SHORT).show();

                        }
                    });
        }
    });

我想这可能很有趣,当我硬编码“anne”时,会出现一个词:value。当我把绳子放进去的时候它就不存在了:纳姆;
单击此处查看图像
新日志

58wvjzkj

58wvjzkj1#

我发现了问题。在原木的帮助下!
字符串naam=edittext.gettext.tostring是在按下按钮之前在oncreate中键入的。
所以,在我打开页面的那一刻,它已经被填满了。
现在,它在.setonclicklistener中,并且可以工作!

相关问题