2017-06-22 6 views
0
reference.child("category").addChildEventListener(new ChildEventListener() { 
     @Override 
     public void onChildAdded(DataSnapshot dataSnapshot, String s) { 
      Log.d("Firebase",dataSnapshot.getValue(String.class)+" Key is "+Integer.parseInt(dataSnapshot.getKey())); 
      cat.add(Integer.parseInt(dataSnapshot.getKey()),dataSnapshot.getValue(String.class)); 
      if(Integer.parseInt(dataSnapshot.getKey())==0) { 
       adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.support_simple_spinner_dropdown_item, cat); 
       catList.setAdapter(adapter); 
      } 
      else { 
       adapter.notifyDataSetChanged(); 
      } 
     } 

リストビューにカテゴリを表示したいとします。しかし、このコードを実行すると、最初のカテゴリのみが表示されますが、ログには両方のカテゴリが表示されます(2つのカテゴリがあります)。firebaseデータベースを使ってアンドロイドのlistviewを動的に更新するには?

答えて

1

アウトループから次のコードを取る:

if(Integer.parseInt(dataSnapshot.getKey())==0) { 
    adapter = new ArrayAdapter<String>(getApplicationContext(), R.layout.support_simple_spinner_dropdown_item, cat); 
    catList.setAdapter(adapter); 
} 

はそれがお役に立てば幸いです。

関連する問題