2017-08-28 26 views
0

最初の2つのキーには子はありませんが、他の2つのキーにはありません。親が1つだけの場合は子要素を表示できますが、データオブジェクトモデルを使用してAdmin/Userの詳細を表示できますが、親要素を表示する方法(Bright Kid Test &他)はListviewにありますか?リストビューにFirebaseの親を表示する方法

これはFirebaseデータベースの画像です:

This is an image of Firebase Database

コード:

listView = (ListView)findViewById(R.id.preschool_list); 
    adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,list); 
    listView.setAdapter(adapter); 
    databaseReference = FirebaseDatabase.getInstance().getReference("Preschools"); 

    databaseReference.addChildEventListener(new ChildEventListener() { 
     @Override 
     public void onChildAdded(DataSnapshot dataSnapshot, String s) { 
      String value = dataSnapshot.getValue(String.class); 
      list.add(value); 
      adapter.notifyDataSetChanged(); 
     } 

     @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) { 

     } 
    }); 

幼稚園の唯一の子がある場合、何も値が示されていない他の表示されています。

+0

getChildren()はdatasnapshotに適用できますか?私はそれをやる方法が分からない。 –

答えて

0

私はdatasnapshot.getChildren()で答えを得ました。

 databaseReference.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for (DataSnapshot dsp : dataSnapshot.getChildren()) 
      { 
       list.add(String.valueOf(dsp.getKey())); 
       adapter.notifyDataSetChanged(); 
      } 
     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 
0

あなたは、リストビューにテキスト明るいキッドLL、明るいキッドモン、明るいキッドのテストを表示することはありませんしたいですか?あなたはそれらを得ることができます

databaseReference.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for (DataSnapshot recipeSnapshot : dataSnapshot.getChildren()) { 
       String key = recipeSnapshot.getKey(); 
       list.add(key); 
      } 

     } 

     @Override 
     public void onCancelled(DatabaseError databaseError) { 

     } 
    }); 
関連する問題