प्रदर्शित करने के लिए अपने सबव्यूव की चौड़ाई को ऑटोरेज़िज़ कर सकता है मेरे पास NSCollectionView
है जिसमें CustomViews
का संग्रह शामिल है। शुरुआत में यह सबव्यूम्स को कॉलम और पंक्तियों में ग्रिड की तरह टाइल करता था। इसके बाद मैंने Columns
संपत्ति को आईबी में 1 में सेट किया है, इसलिए अब यह पंक्तियों में किसी एक के बाद उन्हें प्रदर्शित करता है। हालांकि, भले ही मेरा CustomView
400px चौड़ा है, फिर भी यह ऑटोरेसाइज करने के लिए सेट है, NSCollectionView
400px चौड़ा है, और यह 1 कॉलम पर सेट है, सबव्यूज़ लगभग 80px चौड़े हैं।एनएससीओलेक्शन व्यू एक कॉलम
मैं जानता हूँ कि मैं इस के आसपास फोन करके प्राप्त कर सकते हैं:
CGFloat width = collectionView.bounds.size.width;
NSSize size = NSMakeSize(width, 85);
[collectionView setMinItemSize:size];
[collectionView setMaxItemSize:size];
लेकिन मेरे WindowController
की awakeFromNib
विधि में इस कोड डाल केवल सही चौड़ाई सेट किए जाने पर कार्यक्रम की शुरूआत। जब मैं खिड़की का आकार बदलता हूं (और NSCollectionView
जैसा कि मैंने निर्दिष्ट किया है, तो ऑटोरेसाइज़ करता है), कस्टम व्यू अपनी प्रारंभिक सेट चौड़ाई पर रहते हैं।
मुझे आवश्यकता होने पर सबव्यूज़ का आकार बदलने का ख्याल रखने में खुशी है, लेकिन मैं कोको के लिए काफी नया हूं और ऐसा कोई लेख नहीं दिख रहा है कि इस तरह की चीज कैसे करें। क्या कोई मुझे सही दिशा दिखा सकता है?
एंथोनी
अब है कि खोज की है मैं अपने विंडो नियंत्रक को विंडो के प्रतिनिधि बनने के लिए सेट कर सकता हूं और windowDidResize के माध्यम से आकार बदलना नोटिफिकेशन प्राप्त कर सकता हूं। तो अब मैक्स और न्यूनतम आइटम आकार सेट करने के लिए विंडो का आकार बदलने पर प्रत्येक बार उपरोक्त कोड का उपयोग कर रहा हूं। खिड़की बढ़ने के साथ यह ठीक काम करता है, लेकिन किसी कारण से न्यूनतम/अधिकतम आइटम आकार में वृद्धि के कारण संग्रह दृश्य की सीमाएं कभी भी कम नहीं होतीं, यहां तक कि खिड़की करता है। तो भले ही संग्रह दृश्य दृश्यमान रूप से घटता है क्योंकि मैं खिड़की का आकार बदलता हूं, यह सीमाएं कभी नहीं होती हैं, और मेरे सबव्यू के लिए भी नहीं! – littlecharva
क्या आपने कभी इसे स्वचालित रूप से करने का कोई तरीका खोजा है? – tofutim