मैं UICollectionViewFlowLayout
के साथ UICollectionView
का उपयोग कर रहा हूं।विभिन्न डिवाइस ओरिएंटेशन पर UICollectionViewCell आकार बदलें
मैं
collectionView:layout:sizeForItemAtIndexPath:
के माध्यम से प्रत्येक कोशिका के आकार को निर्धारित जब परिदृश्य के लिए चित्र से स्विच, मैं गद्दी अंतरिक्ष से बाहर निकले बिना, प्रत्येक कोशिका के आकार को समायोजित करने के लिए पूरी तरह से CollectionView के आकार फिट करने के लिए चाहते हैं कोशिकाओं के बीच।
सवाल:
1) कैसे एक रोटेशन घटना के बाद एक सेल का आकार बदलने के लिए?
2) और, बेहतर, कैसे लेआउट बनाने के लिए जहां कक्ष हमेशा स्क्रीन के पूरे आकार में फिट होते हैं?
followben का जवाब वर्तमान में एक स्वीकार किया जाता है, लेकिन यह कुछ मुद्दे हैं: यह नया आकार करने के लिए एक सांत्वना त्रुटि और एनीमेशन फेंक सही ढंग से नहीं होगा होगा। सही कार्यान्वयन के लिए मेरा जवाब देखें। – memmons
@ माइकलजी.इमन्स: आपका उत्तर बेहतर काम करेगा जहां संग्रह दृश्य केवल एक ही पूर्ण आकार के सेल को प्रदर्शित करता है। उस स्थिति में, यह समझता है कि UIKit रोटेशन पर शिकायत करता है क्योंकि यह 'didRotateFromInterfaceOrientation' को कॉल करने से पहले 'sizeForItemAtIndexPath' से पूछताछ करेगा। हालांकि, स्क्रीन पर एकाधिक सेल्स के साथ एक संग्रह दृश्य के लिए, घूर्णन से पहले लेआउट को अमान्य करने से देखने से पहले आकार में एक बुरा, दृश्यमान कूद होता है। उस उदाहरण में, मेरा मानना है कि मेरा जवाब अभी भी सबसे सही कार्यान्वयन है। – followben
@followben सहमत हैं कि प्रत्येक के पास विभिन्न उपयोग मामलों में उनके मुद्दे हैं। इस मामले में, ओपी इंगित करता है कि 'मैं प्रत्येक सेल के आकार को समायोजित करना चाहता हूं ** ** संग्रहव्यू ** के आकार को पूरी तरह से फिट करें **' जो वास्तव में मेरे उत्तर में प्रस्तावित समाधान है। यदि आप अपने समाधान में अपना समाधान शामिल कर सकते हैं और ध्यान दें कि कौन सा दृष्टिकोण सबसे अच्छा काम करता है, जिसके अंतर्गत स्थितियां मेरे लिए पर्याप्त होंगी। – memmons