这可能有点长,但请帮忙。
我想在listview
中显示来自firebase的记录,我正在使用childeventlistener
。 我想要的是,当我点击显示按钮时,它应显示listview
中的所有记录,但它不会显示任何内容。我有另一个按钮将记录添加到数据库中,当我添加记录然后尝试从base显示数据时,它会显示正确的数据。这是我的代码
final Intent intent = getIntent();
str1 = intent.getStringExtra("ClassName");
p = intent.getIntExtra("ID", 0);
String url = "https://onlookers-201096.firebaseio.com/" + str1;
mRef = new Firebase(url);
databaseReference = FirebaseDatabase.getInstance().getReferenceFromUrl(url);
listView = findViewById(R.id.lv11);
arrayAdapter = new ArrayAdapter<>(this, android.R.layout.simple_list_item_activated_1, id);
listView.setAdapter(arrayAdapter);
presentStudent = new LinkedHashSet<>();
databaseReference.addChildEventListener(new com.google.firebase.database.ChildEventListener() {
@Override
public void onChildAdded(com.google.firebase.database.DataSnapshot dataSnapshot, String s) {
value = dataSnapshot.getValue(String.class);
key = dataSnapshot.getKey();
id.add(key + ":" + value);
arrayAdapter.notifyDataSetChanged();
}
@Override
public void onChildChanged(com.google.firebase.database.DataSnapshot dataSnapshot, String s) {
}
@Override
public void onChildRemoved(com.google.firebase.database.DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(com.google.firebase.database.DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
我能说的是它只在添加孩子时显示数据。我想直接从火灾基地显示数据。 注意:我尝试使用firebase listadapter,但仍然无法获得任何解决方案Here is the question I asked earlier about FirebaseListadapter
Here is my database screenshot CSE是孩子,它取决于用户选择它。如果用户输入CIVIL或MECHANICAL,它将创建一个具有相应名称的新子项。
str1 = intent.getStringExtra("ClassName");
String url = "https://onlookers-201096.firebaseio.com/" + str1;
mRef = new Firebase(url);
我正在使用此链接,其中str1
具有要追加的子项名称