Как я могу отфильтровать базу данных Firebase и добавить их в мой Android Spinner? - PullRequest
0 голосов
/ 22 сентября 2019

Итак, у меня есть эта семейная база данных, и мне нужен счетчик, который отображает список кривизны и фильтрует их, чтобы они не повторялись, потому что у многих людей будет такая же кривизна.

Подскажите, как показать счетчик для всех форм.после этого я хочу создать новую страницу, на которой будут отображаться все выбранные мной люди.

Spinner spinner;
DatabaseReference databaseReference;
ValueEventListener listener;

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


        listener=databaseReference.child("family").addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                final List<String> family=new ArrayList<String>();
                for(DataSnapshot familySnapshot:dataSnapshot.getChildren()){
                    String familyname=familySnapshot.child("curvillage").getValue(String.class);
                }

                Spinner spinner = (Spinner) findViewById(R.id.dataspinner);
                ArrayAdapter<String> adapter = new ArrayAdapter<String>(MainActivity.this, android.R.layout.simple_spinner_item, family);
                adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
                spinner.setAdapter(adapter);

            }

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

            }
        });
}

}

enter image description here

1 Ответ

1 голос
/ 22 сентября 2019

Вы можете сделать следующее, чтобы удалить дублированные кривые, которые затем можно использовать для отображения списка.

const uniqueCurvillage = [...new Set(family.map(f => {
   return f.curvillage
}))];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...