limitToFirst 在 Android 上不起作用

问题描述 投票:0回答:2

下面是我的 firebase 结构:


我用来设置数据限制的代码:

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    getActivity().getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);
    connectDetector = new ConnectDetector(getActivity());
    if(connectDetector.getConnection()) {
        alanRef = new Firebase(firebaseURL).child(EventChatActivity.SuperCateName + "/ " + eventDetail.getCategory_name() + "/ " + eventDetail.getEvent_title() + "/ " + EventChatActivity.eventID).child("StadiumChat");
        alanRef.limitToFirst(mPageLimit).startAt(mPageEndOffset);
        userName = MyApp.preferences.getString(MyApp.USER_NAME, null);

    }
}

此代码为我提供了该特定节点中的所有子节点。

请建议应该添加什么来设置限制。


更新:

我对 First 添加了限制,然后我检查了文档,其中说也对其设置了 OrderBy。

那么我应该按什么顺序设置才能得到正确的结果。

我的网址:https://wazznow-cd155.firebaseio.com/Cricket/%20IPL/%20MI%20vs%20XXR/%20ABC123/StadiumChat.json?limitToFirst=10&orderBy=%22%22&print=pretty

android firebase firebase-realtime-database
2个回答
1
投票

limitToFirst 将与 orderBy value 一起使用。请将 orderBy 与 limitToFirst 一起使用。

请从以下网址查看。 https://dinosaur-facts.firebaseio.com/dinosaurs.json?orderBy=%22height%22&limitToFirst=3&print=pretty


0
投票

要应用限制,您需要使用

Query
.class。

int mPageEndOffset = 0;
int mPageLimit = 10;
Query alanQuery;

alanRef = new Firebase(firebaseURL).child(EventChatActivity.SuperCateName + "/ " + eventDetail.getCategory_name() + "/ " + eventDetail.getEvent_title() + "/ " + EventChatActivity.eventID).child("StadiumChat");
Query alanQuery = alanRef.limitToFirst(mPageLimit);
© www.soinside.com 2019 - 2024. All rights reserved.