Sunday 15 May 2011

ios - UICollectionView paging breaks after 2^24 pixels -


सेटअप

मेरे पास एक UICollectionView उपयोगकर्ता को चित्रों के माध्यम से पृष्ठ, 12 से एक पृष्ठ पर अनुमति देता है। सभी 200,000 चित्रों के ऊपर हैं जो सभी को एप में उपलब्ध होना चाहिए। मैं किसी उपयोगकर्ता को पृष्ठ 20,000 तक स्क्रॉल करने की उम्मीद नहीं कर रहा हूं, इसलिए किसी खास पृष्ठ पर जाने के लिए फ़ंक्शन है।

समस्या

लैंडस्केप अभिविन्यास में, पृष्ठ 16,385 पर पेजिंग टूट जाता है संग्रह अब पृष्ठ सीमा को समायोजित नहीं करता है यदि आप पृष्ठ 16,384 से पहले वापस जाते हैं, तो आप इसे फिर से काम करना शुरू कर सकते हैं, लेकिन 16,385 कामों के पीछे कोई पृष्ठ नहीं है।

मेरा प्रतिनिधि भी scrollViewDidEndDecelerating: पता चलता है।

परिकल्पना

लैंडस्केप ओरिएंटेशन में पृष्ठ 16,777,216 पिक्सेल से शुरू होता है जो 2 ^ 24 मुझे लगता है कि UICollectionView या UIScrollView में कुछ है जो पिछले 2 ^ 24 को तोड़ता है।

क्या यह सिर्फ एक अपठित सीमा है? क्या मैं भाग्य से बाहर हूं?

उदाहरण

मैंने अपलोड किया है जो समस्या को दर्शाता है प्रासंगिक दृश्य नियंत्रक यदि आप अपने आईपैड या सिम्युलेटर को हिलाते हैं, तो आपको बग से पहले एक पृष्ठ पृष्ठ 16,384 तक ले जाया जाएगा।

snark

यदि आप नहीं सोचते कि उपयोगकर्ता को पृष्ठ 20,000, यह अच्छा है पर जाने में सक्षम होना चाहिए। मुझे नहीं लगता कि यह प्रश्न के लिए प्रासंगिक है।

मैं कह सकता हूं यह एक अनुपयुक्त सीमा है और सबूत के रूप में नमूना परियोजना को संलग्न करने, एक रडार बग रिपोर्ट फ़ाइल होगा यदि आप एक वैकल्पिक विधि की तलाश में हैं, तो आप प्रत्येक पृष्ठ के लिए एक संग्रह दृश्य के साथ UIPageViewController का उपयोग कर सकते हैं। आप डिफॉल्ट iBooks-esque एनीमेशन के बजाय स्वाइपिंग एनीमेशन चुन सकते हैं, और अपने नमूना प्रोजेक्ट को बहुत बारीकी से दोहरा सकते हैं।

No comments:

Post a Comment