-3

Firebase 数据收集的快照

当用户按名称搜索植物时。我想从数据库中提取该数据。例如,当用户搜索向日葵时,我的应用程序应该在文本视图中显示该特定花的价格。谢谢

4

1 回答 1

0
DatabaseReference readDb = db.getReference("Your Chanel Name");
    readDb.addValueEventListener(new ValueEventListener() {
        @Override
        public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
            list.clear();
            for (DataSnapshot messageSnapshot : dataSnapshot.getChildren()) {
                list.add(messageSnapshot.getKey());
                listView.setAdapter(adapter);
            }
        }

        @Override
        public void onCancelled(@NonNull DatabaseError databaseError) {
        }
    });

将您的数据放入列表中。并在搜索时使用以下代码

search.addTextChangedListener(new TextWatcher() {
        @Override
        public void beforeTextChanged(CharSequence s, int start, int count, int after) {

        }

        @Override
        public void onTextChanged(CharSequence s, int start, int before, int count) {
            adapter.getFilter().filter(s);
            adapter.notifyDataSetChanged();
        }

        @Override
        public void afterTextChanged(Editable s) {

        }
    });

您还可以获取您单击的项目的值。

final String value = adapter.getItem(position);
于 2018-10-14T14:32:22.887 回答