यहां मेरा सेटअप है: मेरे पास एक सीएएलएयर है जिसमें मैं सब्लेयर जोड़ना चाहता हूं। मैं उबाला को स्थापित करके और फिर यूआईएलएबल परत को अपनी मुख्य परत में जोड़कर इन सबबेलर्स बना देता हूं। बेशक यह पृष्ठभूमि में चारों ओर घूमने वाली भारी UILabel ऑब्जेक्ट छोड़ देता है। क्या UIView से अपनी सभी सामग्री के साथ परत प्राप्त करना संभव है और UIView से छुटकारा पाएं?UIView से कैलियर की प्रतिलिपि बनाना संभव है?
UILabel* label;
[...]
[mainLayer addSublayer:[label.layer copy]];
[label release];
लेकिन जब भी मैं UIView जारी, परत की सामग्री भी हटा दिया जाता है: मैं पहले से ही इस की कोशिश की। क्या यह भी संभव है या UIView की परत को हमेशा इसकी सामग्री दिखाने के लिए UIView की आवश्यकता है? मैंने परत को कैनवास के रूप में सोचा, जिस पर UIView पेंट्स। मुझे लगता है कि मैं इस धारणा के साथ गलत हो सकता है :)
शायद क्योंकि एक परत के प्रयोजन उसके संबंधित UIView और उसके sublayers रेंडर करने के लिए है दोहराने के लिए सक्षम हो जाएगा। यदि UIView गायब हो जाता है क्योंकि आप इसे छोड़ देते हैं, तो आपको उस परत का उपयोग करने की आवश्यकता क्यों होगी जो मूल रूप से उस UIView से जुड़ा हुआ था? यदि आपको वास्तव में एक परत की आवश्यकता है तो यह मेरे लिए तार्किक प्रतीत होता है कि आपको इसके UIView की भी आवश्यकता है।हेंट्ज निश्चित रूप से आपके द्वारा सुझाए गए दृष्टिकोण का प्रयास कर सकता है (और मुझे यकीन नहीं है कि यह काम करेगा या नहीं), लेकिन मैंने इसे कोर एनीमेशन कोड में पहले नहीं देखा है। इसके अलावा, अगर ऐप्पल ने इसे संभव बनाने के बारे में सोचा था, तो यह नेलेयर को एनएससीपीआईपी के साथ अनुपालन करता। अगर यह दृष्टिकोण काम करता है या नहीं तो कृपया मुझे बताएं। –
एक कैलियर की प्रतिलिपि बनाने के लिए मैं देख सकता हूं कि एकमात्र कारण यह है कि उसे स्क्रीन पर एक ही परत के गुणकों को प्रदर्शित करने की आवश्यकता होती है। मुझे लगता है कि आमतौर पर आप कई परतों को बनाने के बारे में सोचेंगे जैसे आपने पहले बनाया था। हालांकि, मुझे नहीं लगता कि अगर आप पहले को नष्ट करने का इरादा रखते हैं तो आप एक प्रतिलिपि क्यों बनायेंगे। मेरी सोच यह थी कि उसे वास्तव में "प्रतिलिपि" की आवश्यकता नहीं थी जितनी उसे मूल के समान गुणों के साथ एक परत की आवश्यकता थी। आप सही हैं क्योंकि इसमें समस्या का स्वीकार्य समाधान नहीं है, लेकिन यह देखना दिलचस्प है कि यह कैसे काम करता है। –