从firebase数据库向spinner填充数据

时间:2017-08-23 10:09:36

标签: java android firebase firebase-realtime-database android-spinner

我的FireBase数据库是这样的: enter image description here

我想将groupname中的所有值作为字符串列表或任何形式的列表获取,并使用它来填充Spinner。我得到的问题是它没有检索任何值。这是我的实际代码:

 @Override
    protected void onStart() {
        super.onStart();
        databaseGroups.child("Groups").addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                final List<String> areas = new ArrayList<String>();
                for (DataSnapshot areaSnapshot: dataSnapshot.getChildren()) {
                    String areaName = areaSnapshot.child("groupname").getValue(String.class);
                    areas.add(areaName);
                    System.out.println("Group Names are ::::::::::::::::::::::"+areas);
                }
                // Spinner element
                Spinner spinner = (Spinner) findViewById(R.id.spinner);

                // Creating adapter for spinner
                ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(member_auth.this, android.R.layout.simple_spinner_item, areas);

                // Drop down layout style - list view with radio button
                dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

                // attaching data adapter to spinner
                spinner.setAdapter(dataAdapter);

            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });
    }

Spinner是空的,帮助......

2 个答案:

答案 0 :(得分:0)

检查 databaseGroups 值后。它等于

databaseGroups = FirebaseDatabase.getInstance().getReference();

或其他。你能提供一些错误日志吗?

答案 1 :(得分:0)

我实际上找到了解决方案,onStart功能根本没有发现。所以我将整体放在另一个功能中,它完美无缺。