मेरे पास 1000 टुकड़े हैं, जिन्हें टुकड़े में रखा गया है। जब टुकड़ा बनाया जाता है, तो मुझे 600 वें आइटम पर viewPager को स्थानांतरित करने की आवश्यकता होती है। नीचे कोड है कि मैं वास्तव में ऐसा कैसे करता हूं, लेकिन इसमें कुछ समय लगता है।
mPager.post(new Runnable() {
public void run() {
mPager.setCurrentItem(600, false);
}
});
क्या यह इसे async / स्मूथ बनाने का कोई तरीका है?
धन्यवाद।
2 जवाब
जैसा कि आप पृष्ठभूमि थ्रेड से UI तत्वों को नहीं छू सकते हैं, इसलिए आप इसे ViewPager.offScreenPageLimit()
सेट करने की तरह एक बार में अधिक आइटम लोड करने के लिए क्या कर सकते हैं।
उदाहरण के लिए मैं 100 सेट कर रहा हूं, लेकिन आप इसे सेट कर सकते हैं और फिर इसका परीक्षण कर सकते हैं:
mPager.setOffscreenPageLimit(100);
इसे चिकना बनाने के लिए setCurrentItem()
में भी सही उपयोग करें। पसंद:
mPager.post(new Runnable() {
public void run() {
mPager.setCurrentItem(600, true);
}
});
अर्सलान जवाब अच्छा है।
इसके अलावा, यदि आप FragmentStatePagerAdapter का उपयोग कर रहे हैं, तो यहां बताए गए मुद्दों से अवगत रहें
संबंधित सवाल
नए सवाल
android
एंड्रॉइड Google का मोबाइल ऑपरेटिंग सिस्टम है, जिसका उपयोग प्रोग्रामिंग या डिजिटल डिवाइस (स्मार्टफोन, टैबलेट, ऑटोमोबाइल्स, टीवी, वियर, ग्लास, IoT) को विकसित करने के लिए किया जाता है। एंड्रॉइड से संबंधित विषयों के लिए, एंड्रॉइड-विशिष्ट टैग जैसे कि एंड्रॉइड-इरादे, एंड्रॉइड-गतिविधि, एंड्रॉइड-एडॉप्टर आदि का उपयोग करें। विकास या प्रोग्रामिंग के अलावा अन्य प्रश्नों के लिए, लेकिन एंड्रॉइड फ्रेमवर्क से संबंधित हैं, इस लिंक का उपयोग करें: https: // android.stackexchange.com।