2012-08-08 22 views
6

मेरे पास scrollview है चौड़ाई 88 के 5 छवि दृश्य।आईफोन में अनंत स्क्रॉल व्यू कैसे करें?

मैं scrollview प्रत्येक छवि दृश्य (नहीं पेजिंग)

और

मैं जिसका मतलब है कि यह पिछले करने के लिए स्क्रॉल जब iPhone में एक अनंत scrollview बनाना चाहते करने के लिए स्क्रॉल करना चाहते हैं आइटम यह इसके बगल में पहला आइटम प्रदर्शित करेगा ..

मैं ऑफसेट द्वारा कोशिश कर रहा हूं लेकिन ऑफसेट द्वारा इसे स्थानांतरित करते समय यह बंद हो जाता है और मैंने उपयोग किया है सेब स्ट्रीट स्क्रोलर जो मुझे केंद्र में प्रत्येक तत्व को रोकने की अनुमति नहीं देता है (जैसे पिकर व्यू) ..

+0

इसके साथ या उपयोगकर्ता सहभागिता के बिना होने जा रहा है? –

उत्तर

9

सबसे पहले, मैं एक UITableView का उपयोग करने की अनुशंसा करता हूं ताकि आप स्मृति उपयोग को कम बनाए रख सकें। एक दृष्टिकोण है कि मैं एक परियोजना में सफलतापूर्वक इस्तेमाल किया था निम्नलिखित:

    1. सूची आइटम

अपने कोशिकाओं के डुप्लिकेट सामग्री, मेरा मतलब है अगर आप इस तरह से 5 आइटम नहीं हैं:

| 1 | 2 | 3 | 4 | 5 |

आप एक ही जोड़ना चाहिए क्रम में इस तरह देखने के लिए तालिका के अंत में (एक मेज है कि एक बड़ी बात नहीं है पुन: प्रयोज्य इंजन के साथ ध्यान में रखते हुए):

| 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 | 5 |

    2।scrollViewDidScroll को निम्न के साथ संशोधित करें:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView 
{ 
    if (scrollView == _yourScrollView) { 
     CGFloat currentOffsetX = scrollView.contentOffset.x; 
     CGFloat currentOffSetY = scrollView.contentOffset.y; 
     CGFloat contentHeight = scrollView.contentSize.height; 

     if (currentOffSetY < (contentHeight/6.0f)) { 
      scrollView.contentOffset = CGPointMake(currentOffsetX,(currentOffSetY + (contentHeight/2))); 
     } 
     if (currentOffSetY > ((contentHeight * 4)/ 6.0f)) { 
      scrollView.contentOffset = CGPointMake(currentOffsetX,(currentOffSetY - (contentHeight/2))); 
     } 
    } 
} 

ऊपर दिए गए कोड स्क्रॉल स्थिति को शीर्ष पर ले जाते हैं यदि आप लगभग स्क्रॉलिंग के अंतिम तक पहुंचते हैं; या यदि आप शीर्ष पर लगभग हैं, तो आप नीचे करने के लिए ले जाता है ...

    3. यह है कि।
+2

ग्रेट समाधान। हालांकि ऑफ़सेट बदलते समय इस 'झपकी' को छोड़ने का कोई तरीका है? – Vive

4

इससे मुझे लंबे समय तक गंभीर समस्याएं हुईं, इसलिए मुझे वास्तव में आपका दर्द महसूस होता है। मुझे यह नियंत्रण मिला जो आपकी समस्या का समाधान करना चाहिए: http://www.cocoacontrols.com/platforms/ios/controls/infinitescrollview

मैंने संक्रमण और अक्षम स्क्रॉल डालने पर भी विचार किया है, इसलिए यह एक स्लाइड शो की तरह बन जाता है लेकिन किसी भी तरह से काम करना चाहिए।

1

यहां समाधान का एक छोटा सा स्पष्टीकरण है जो मैं करता था।

मान लें कि आपके पास 0 - 9 से काउंटर है, फिर, जब आप संक्रमण 9 -> 0 बनाते हैं, तो आप वास्तव में 9 (स्क्रॉल व्यू में) के बाद 0 (इसे 0 'कहते हैं) को धोखा देते हैं, एनिमेटेड संक्रमण 0' और स्क्रॉल व्यू के शीर्ष पर स्थित 0 तक गैर-एनिमेटेड त्वरित संक्रमण करने से।

8

आप इस दो विकल्पों में से एक पर एक नजर है कर सकते हैं:, आप एक डेवलपर के रूप में पंजीकृत कर रहे हैं

+1

उन्नत scrollview तकनीक * इस समस्या को हल करने के लिए देखने के लिए * बात है। – cbowns

0

किसी और एक समाधान की तलाश के लिए, आप भी इस पुस्तकालय अनंत स्क्रॉल पिकर https://github.com/Seitk/InfiniteScrollPicker/ पर कोशिश कर सकते हैं यह मूल रूप से ड्रैग और ड्रॉप है। मैं इसे एक परियोजना पर उपयोग कर रहा हूं और यह बहुत अच्छा काम करता है।

संबंधित मुद्दे