当我尝试将数据从Firebase导入列表视图

时间:2018-04-28 04:46:41

标签: android-studio

    octDatabase = FirebaseDatabase.getInstance().getReference().child("Octave Spectrum");
    octList = (ListView) findViewById(R.id.octaList);

    ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, octData);

//它一直工作到这一点,然后应用程序崩溃setAdapter函数对我不起作用         octList.setAdapter(arrayAdapter);

    octDatabase.addChildEventListener(new ChildEventListener() {
        @Override
        public void onChildAdded(DataSnapshot dataSnapshot, String s) {

            String y = dataSnapshot.getValue(String.class);

            octData.add(y);


        }

        @Override
        public void onChildChanged(DataSnapshot dataSnapshot, String s) {

        }

        @Override
        public void onChildRemoved(DataSnapshot dataSnapshot) {

        }

        @Override
        public void onChildMoved(DataSnapshot dataSnapshot, String s) {

        }

        @Override
        public void onCancelled(DatabaseError databaseError) {

        }
    });

This is the list i am trying to import from firebase

1 个答案:

答案 0 :(得分:0)

首先,目前尚不清楚什么是octData?所以根据我的理解,你的listname是octList。

因此,您需要在代码中的数组适配器的第三个参数中设置列表,如下所示: -

octDatabase = FirebaseDatabase.getInstance().getReference().child("Octave Spectrum");
    octList = (ListView) findViewById(R.id.octaList);

替换以下行: -

ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, octData);

: -

ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, octList);