firebase 페이지 매김에 문제가 있습니다.Firebase 데이터베이스를 사용하여 페이지 매김이 작동하지 않습니다.
나는 테이블 게시물이와이 구성 예이다 :
나는 10 이후 모든 시간을 얻으려면, 여기 내 코드 페이지는 0 :
@NonNull
@CheckResult
public Single<DataSnapshot> getData(@NonNull DatabaseReference ref, int page) {
return Single.create(emitter -> {
ref.orderByChild("timestamp")
.startAt(page * 10)
.limitToFirst(10);
final ValueEventListener listener = new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
if (!emitter.isDisposed()) {
emitter.onSuccess(dataSnapshot);
}
}
@Override
public void onCancelled(DatabaseError databaseError) {
if (!emitter.isDisposed()) {
emitter.onError(databaseError.toException());
}
}
};
ref.addListenerForSingleValueEvent(listener);
});
}
결과는 다음과 같습니다.
왜 목록 크기는 20이 아닌 10입니까? 추신. 첫 번째 또는 제한에 대한 제한은 그것이 DatabaseReference
반환에 startAt()
, limitToFirst()
과 유사한 방법 새로운 Query
객체를 호출 한 결과
두 명의 사용자가있을 수 있습니다. 또한 사용자 당 게시물 수가 아닌 사용자 수를 10 명으로 제한하고 있습니다 –