2011-01-10 2 views
9

मैं बटनों का एक गुच्छा बनाने की कोशिश कर रहा हूं जैसे कुछ फ्लोट: सीएसएस में छोड़ा गया। इसलिए जब भी दृश्य आकार बदलता है, उदाहरण के लिए अभिविन्यास परिवर्तन पर, बटन समायोजित करना चाहिए ताकि वे अपने कंटेनर दृश्य में फिट हो जाएं।फ्लोट: उद्देश्य में छोड़ा गया-सी

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

मैं आईपैड यूट्यूब ऐप में "फीचर्ड" टैब के समान स्क्रॉलव्यू बनाने की कोशिश कर रहा हूं। लैंडस्केप में 4 कॉलम हैं, पोर्ट्रेट: 3 कॉलम, "सब्सक्रिप्शन" टैब, पोर्ट्रेट, वही व्यू में 2 कॉलम हैं।

alt text

+2

+1 एक अच्छी तरह से विचार और प्रस्तुत प्रश्न के लिए +1। मुझे खेद है कि मैं इसका जवाब नहीं दे सकता। – Abizern

+0

मेरे साथ +1 :) – Moszi

उत्तर

2

मैं एक layout system को लागू किया है इस तरह काम करने के लिए। उस रिपॉजिटरी में चेक इन करने के तरीके पर एक डेमो प्रोजेक्ट है। मुझे इसके बारे में किसी भी प्रश्न का उत्तर देने में खुशी होगी। यह AQGridView की तुलना में अधिक हल्का है, इसलिए यदि आपको अतिरिक्त कार्यक्षमता की आवश्यकता नहीं है, तो मैं अपने जैसा दृष्टिकोण सुझाऊंगा।

+0

लिंक अब और काम नहीं कर रहा है। – Myxtic

+0

आप अभी भी इसे अपने जिथब पर पा सकते हैं, लेकिन आपको अभी यह करने के लिए कोको ऑटो लेआउट का उपयोग करना चाहिए। –

1

आप AQGridView, जो मूल रूप से कोको के NSCollectionView की एक फिर से कार्यान्वयन है की जाँच करने के लिए चाहते हो सकता है: https://github.com/AlanQuatermain/AQGridView

अन्यथा, आप अपने parentView में layoutSubviews ओवरराइड और उसके बाद की जरूरत हो सकती subviews को पुनर्व्यवस्थित (बटन) तदनुसार जब parentView के आयाम बदल जाते हैं।

चीयर्स,

जोहानिस

0

आप (layoutSubviews अधिभावी द्वारा) मैन्युअल रूप से इस लागू करने के लिए किया था, तो मुझे लगता है कि एल्गोरिथ्म कुछ इस तरह होगा:

  1. एक्स = 0 के साथ शुरू, वाई = 0 (यह मानते हुए फ़्लिप निर्देशांक)
  2. प्रत्येक बटन के लिए:
    1. हैं (एक्स + बटन चौड़ाई)> कंटेनर चौड़ाई, एक्स = 0 सेट, (एक्स, वाई) बटन के द्वारा
    2. बढ़ाएँ एक्स पर
    3. प्लेस बटन Y वृद्धि चौड़ाई