2017-01-15 18 views
0

어린이의 일정 금액을 가져 오기 :내가 중포 기지 데이터베이스 게시물 검색이 코드를 사용하고 내 안드로이드 응용 프로그램에서 중포 기지 데이터베이스

ArrayList<Post> posts = new ArrayList<>(); 
dbRef.addValueEventListener(new ValueEventListener() { 
      @Override 
      public void onDataChange(DataSnapshot dataSnapshot) { 
       for(DataSnapshot dsp : dataSnapshot){ 
        String author = dsp.child("author").getValue().toString(); 
        String text = dsp.child("author").getValue().toString(); 
        posts.add(new Post(author,text)); 
      } 
       @Override 
       public void onCancelled(DatabaseError databaseError) { 

       } 
      }); 

을하지만이 모든 게시물을 반환하고 나는 많은있을 것입니다 경우 그들을 모두 기억에 남기는 것이 좋지 않을 것이라고 생각합니다. 특정 수의 노드 자식 만 가져 오는 방법이 있습니까? 예를 들어 처음에는 처음 10 개를 얻고 싶습니다. 그런 다음 10 개를 더 얻고 싶습니다.

답변

1

당신은 limitToFirst() (또는 limitToLast())을 찾고 있습니다.

ArrayList<Post> posts = new ArrayList<>(); 
Query query = dbRef.orderByKey().limitToFirst(10); 
query.addValueEventListener(new ValueEventListener() { 
     @Override 
     public void onDataChange(DataSnapshot dataSnapshot) { 
      for(DataSnapshot dsp : dataSnapshot){ 
       String author = dsp.child("author").getValue().toString(); 
       String text = dsp.child("author").getValue().toString(); 
       posts.add(new Post(author,text)); 
     } 
      @Override 
      public void onCancelled(DatabaseError databaseError) { 

      } 
     }); 

모든 기능에 대한 설명은 Firebase documentation on queries을 참조하십시오.

1

자세한 정보를 검색하려면 DataSnapShot을 사용해야합니다.

활용 방법을 설명하는 Andoird 용 FireBase 가이드가 있습니다. Firebase Android Guide

작은 예제 인 stackOverFlow를 보려면이 답변을 달성하려는 것으로 생각됩니다. FireBase Get Children

희망 사항은 Android를 통한 Firebase 사용에 도움이되기를 바랍니다.

관련 문제