1
我正在爲Android的社交應用程序 我試圖從Firebase中檢索數據並顯示(至少15項) 問題是我的代碼只顯示第一個項目 這是我的代碼如何填充與多個Firebase項目的列表視圖
FirebaseHelper
public class FirebaseHelper {
DatabaseReference db;
ArrayList<Questions> questionEntries =new ArrayList<>();
public FirebaseHelper(DatabaseReference db) {
this.db=db;
}
private void fetchData (DataSnapshot dataSnapshot){
questionEntries.clear();
Questions questions = dataSnapshot.getValue(Questions.class);
questionEntries.add(questions);}
public ArrayList<Questions> retreive(){
db.addChildEventListener(new ChildEventListener() {
@Override
public void onChildAdded(DataSnapshot dataSnapshot, String s) {
fetchData(dataSnapshot);
}
@Override
public void onChildChanged(DataSnapshot dataSnapshot, String s) {
fetchData(dataSnapshot);
}
@Override
public void onChildRemoved(DataSnapshot dataSnapshot) {
}
@Override
public void onChildMoved(DataSnapshot dataSnapshot, String s) {
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
return questionEntries;
}
這是我的活動,其中顯示的列表
public class Actu extends Fragment {
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup
container, @Nullable Bundle savedInstanceState) {
v = inflater.inflate(R.layout.activity_actu, container, false);
lv = (ListView) v.findViewById(R.id.actu_rv);
db = FirebaseDatabase.getInstance().getReference("Questions");
helper = new FirebaseHelper(db);
adapter = new QuestionAdapter(getContext(),helper.retreive());
lv.setAdapter(adapter);
return v; }
}
我應該再次把setText函數嗎? – user8773560
@ user8773560什麼'setText',如果它的列表視圖然後沒有不使用setText ..我更新了答案,現在應該工作 –
我做到了,但它不起作用。結果仍然相同(我只得到一個元素) – user8773560