मेरे पास CALayers
का संग्रह है। प्रत्येक परत एक ही पैरेंट CALayer
का एक उपन्यास है, और प्रत्येक के पास एक छाया लागू होती है। परतों को गतिशील रूप से तैनात किया जाता है, और उनमें से कई हैं, इसलिए मैं भविष्यवाणी नहीं कर सकता कि उन्हें समय से पहले कैसे व्यवस्थित किया जाएगा।क्या कैलेयर छाया को आसन्न परतों को ओवरलैप करने से रोकने का कोई तरीका है?
यदि परतें एक दूसरे के समीप हैं (पर्याप्त करीब है कि वे लगभग छू रहे हैं) CALayers
में से एक की छाया अन्य CALayer
के शीर्ष पर प्रदान की जाती है। यह शायद ज्यादातर मामलों में वांछित प्रभाव है, लेकिन मैं चाहता हूं कि मेरी परतें एक ही जेड-प्लेन में मौजूद हों। (इसका एक उदाहरण CSS3 वेब डिज़ाइन में ब्लॉक तत्वों पर छाया लागू होती है।)
क्या यह संभव है? इसे कैसे प्राप्त किया जा सकता है?
(मुझे यह विचार था: प्रत्येक CALayer
पर अपनी छाया छवि के साथ 'छाया' सबबेलर जोड़ना, और जेड-स्थिति को कम मूल्य पर सेट करना। लेकिन क्या परत-पेड़ इसे असंभव बना देता है? Z- एक परत की समन्वय प्रणाली में स्थितियां किसी अन्य परत के समन्वय प्रणाली में जेड-पोजिशन से स्वतंत्र हैं, है ना?)
वाह, धन्यवाद! यह हिंडसाइट में इतना स्पष्ट है। विचार मेरे साथ हुआ, लेकिन मुझे लगा कि यह कंटेनर परत (जो भी है, हाहा) के आकार में एक छाया लागू किया होगा। –
+1 उत्कृष्ट उत्तर – occulus