6

मैं आईओएस विकास में नया हूं। मेरी धारणा के आधार पर, ऐप स्टोर में फ़ीचर पेज UITableView और UICollectionView के संयोजन का उपयोग करके बनाया गया था। लेकिन सिद्धांत और कोड में ऐसा कैसे करें? मुझे पता है कि यह थोड़ा अस्पष्ट है, क्योंकि इसका वर्णन करना काफी कठिन है, लेकिन मुझे कुछ लोगों को इसकी व्याख्या करने में मदद करने के लिए बस कुछ चाहिए।ऐप स्टोर में फीचर्ड पेज जैसे लेआउट कैसे बनाएं?

इस मामले मैं इन नामकरण का उपयोग करने की कोशिश करेंगे के लिए:

1. शीर्ष अनुभाग, यह एक दृश्य जिससे ऐप्स का बैनर दिखा रहा है, लोगों को एक और बैनर देखने पर यह स्वाइप कर सकते हैं है।
2. मध्य खंड, विचार जो क्षैतिज रूप से स्क्रॉल किए जा सकते हैं। (सर्वश्रेष्ठ नए ऐप्स, सर्वश्रेष्ठ नए खेल, आदि)।
3. नीचे अनुभाग, त्वरित लिंक से नीचे तक शुरू होता है।

सवाल:

1. स्क्रॉल सूचक है जड़ दृश्य के शीर्ष गाइड से शुरू होता है, जो सामान्य है, लेकिन:
एक। जब हम इसे स्क्रॉल करते हैं, तो उछाल मध्य भाग से शुरू होता है। उसको कैसे करे? क्या शीर्ष अनुभाग और मध्य खंड एक अलग दृश्य है? लेकिन रूट दृश्य की शीर्ष मार्गदर्शिका से स्क्रॉल सूचक कैसे प्रारंभ किया जा सकता है यदि शीर्ष और मध्य अनुभाग एक अलग दृश्य है? (अलग दृश्य का अर्थ है कि विचारों में अलग स्क्रॉल सूचक होना चाहिए जबतक कि यह वास्तव में UIScrollView के सबव्यूज़ नहीं है)।
बी। जब हम इसे नीचे स्क्रॉल करते हैं, वहां तैरने वाली कुछ भी नहीं है। तो ऐसा लगता है कि पूरा पृष्ठ एक स्क्रॉल व्यू का एक सबव्यूव है लेकिन बाउंसनेस मध्य खंड से शुरू होता है। उस उछाल प्रभाव को कैसे बनाया जाए, जबकि पूरे पृष्ठ के लिए केवल एक स्क्रॉल संकेतक हो?

2. मध्य भाग में, कई संग्रह दृश्य हैं जिनमें क्षैतिज स्क्रॉल दिशा है। क्या इसे बनाने के लिए यह सबसे अच्छा तरीका है कि UITableView को उस सेल के साथ उपयोग करना है जिसमें UICollectionView है? ऐसा लगता है कि यह इस तरह से बनाया गया था, लेकिन:
ए। क्या यह करने का सबसे प्रभावी तरीका है?
बी। मेरे पहले प्रश्न में मामले भ्रम का स्रोत है।

3. बोतलों के अनुभाग में मध्य खंड से अलग विभाजक है। मध्य खंड में इंडेंटेशन होता है जबकि नीचे अनुभाग नहीं होता है। अगर मैं मामला एक UITableView है तो मैं यह कैसे कर सकता हूं?

मेरा पूरा सवाल यह है कि इस तरह का एक लेआउट कैसे बनाया जाए। यदि आप मुझे कुछ नमूना कोड प्रदान करके मेरी मदद नहीं कर सकते हैं, तो कृपया मुझे यह कैसे करें कि अवधारणा या सिद्धांत बताएं।

यदि पूरा उत्तर सिर्फ मुझे स्क्रैच से ऊर्ध्वाधर/क्षैतिज UIScrollView का उपयोग करके बनाना है जो ठीक है। मैं बस इसके बारे में सुनिश्चित करना चाहता हूं क्योंकि मैंने मैन्युअल टाइलिंग बनाने से निपटने से बचने की कोशिश की थी।

+0

मुझे लगता है कि शीर्ष दृश्य UITableView के शीर्षलेख है और अन्य भाग क्षैतिज स्क्रॉल के साथ UITableViewCells हैं। – BoranA

+0

मैं पहले एक ही बात सोच रहा था। लेकिन मध्यम वर्ग से उछाल कैसे शुरू होता है? – user3620251

+0

जैसा कि मैंने कहा है कि शीर्ष अनुभाग तालिकादृश्य का शीर्षलेख है। – BoranA

उत्तर

3

ठीक स्क्रीन के बाहर चला जाता है बना सकते हैं, मुझे लगता है कि मुझे अंत में अपना जवाब मिला।

  1. सबसे पहले, मुझे दृश्य की जड़ होने के लिए एक UIScrollView की आवश्यकता है। फिर मैंने सामग्री आकार को एक विशिष्ट मान के रूप में सेट किया।
  2. शीर्ष अनुभाग UIPageController या क्षैतिज UIScrollView हो सकता है।
  3. मध्य अनुभाग एक यूआईटीबल व्यू है जिसमें scroll के लिए सक्षम नहीं है और कक्ष स्थिर हैं। स्थैतिक कोशिकाएं (गतिशील कोशिकाएं भी हो सकती हैं) में यूआईसीओलेक्शन व्यू होगा। चूंकि स्क्रॉल अक्षम है, यह पैरेंट UIScrollView से स्क्रॉल का उपयोग करेगा। इसलिए मैं मध्य भाग में एक ही उछाल प्रभाव प्राप्त कर सकता हूं।
  4. नीचे अनुभाग UITableView का एक और सेल है।

धन्यवाद।

+0

क्या आपने इसे कोडिंग भी समाप्त कर दिया? –

2

यह आपके UITableViewCell में UICollectionViews को लागू करने के साथ मदद कर सकता है: http://ashfurrow.com/blog/putting-a-uicollectionview-in-a-uitableviewcell

tableview में पहला कक्ष "फ्लोट" बनाने के लिए आप यह सुनिश्चित करें कि सेल कभी नहीं में scrollViewDidScroll

+0

धन्यवाद। मैंने पहले ही लेख देखा है। यही कारण है कि मैं पूछ रहा हूं कि यह उस विधि का उपयोग करने का सबसे अच्छा तरीका है? लेकिन मध्य खंड में उछाल के बारे में कैसे? – user3620251

+0

मुझे 100% यकीन नहीं है कि आपका मतलब "बाउंसिंग" के साथ क्या है, लेकिन क्या यह हो सकता है कि UICollectionView में पेजिंग हो? इसका मतलब है कि यदि आप इसे थोड़ा सा स्क्रॉल करते हैं तो यह अगले पृष्ठ पर वापस उछाल या उछाल जाएगा। –

+0

आप इसे आसानी से [self.collectionView setPagingEnabled: YES] के साथ सक्षम कर सकते हैं; और अपने ऐप में "पेज" क्या माना जाता है यह तय करने के लिए विभिन्न फ़्लोलेआउट का परीक्षण करें। –

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