2016-06-16 14 views
10

के साथ अंकन/अनंत स्क्रॉल मेरे पास childByAutoId() के साथ बनाए गए नोड के उप-नोड्स हैं। मैं TableView में इसका उपयोग करने के लिए पेजिनेशन करने की कोशिश कर रहा हूं हालांकि मैं यह नहीं समझ पाया कि कैसे।फायरबेस

मेरे डेटाबेस इस तरह दिखता है:

- items 
    -KKM7Fv8H7dCiD2xChYB 
     - userID : 1231231 

    -KKM7Fv8H7dCiD2MVaVt 
    -KKM7Fv8H7dCiDFJfska 

एक तरीका है कि मैं इसे एक 'पृष्ठ संख्या प्रति आइटम' देने के लिए और तदनुसार डेटा पुनः प्राप्त कर सकते हैं? अनंत स्क्रॉल/पृष्ठांकन

items.queryOrderedByChild("userId").queryEqualToValue(key).observeEventType(.ChildAdded, withBlock: { snapshot in 
+0

यदि आप 'queryLimitedToFirst का उपयोग की जरूरत क्या है:' आप एक सीमित संख्या में प्राप्त कर सकते हैं बच्चों का। बाद के पृष्ठों के लिए, आप 'queryStartingAtValue:' का उपयोग करेंगे। सभी प्रासंगिक तरीकों को [संदर्भ मार्गदर्शिका] में सूचीबद्ध किया गया है (https://firebase.google.com/docs/reference/ios/firebasedatabase/interface_f_i_r_database_query.html#method-detail)। मैं "फायरबेस और पेजिनेशन" की खोज करने की भी सिफारिश करता हूं, क्योंकि इस विषय पर नियमित रूप से चर्चा की गई है। –

उत्तर

0

करने का सबसे अच्छा तरीका है आप प्रत्येक उप नोड के साथ पिछले टाइमस्टैम्प जोड़ने के लिए और उसके बाद क्वेरी

firebaseRef.child("user_id").queryOrdered(byChild: "timestamp").queryEnding(atValue: lastTimeStamp - 1).queryLimited(toLast: 10).observe(.value, with: { (snapshot) in })