मैं एक दृश्य में CAGradientLayer
जोड़ रहा हूं। जब दृश्य स्वतः आकार बदलता है (जैसे घूर्णन के बाद) ढाल परत का आकार बदल नहीं जाता है। क्या ढाल को दृश्य के रूप में ऑटो-आकार बदलने के लिए सेट किया जा सकता है? ध्यान दें कि मैं दृश्य में ऑटो-लेआउट बाधाओं का उपयोग कर रहा हूं।रोटेशन के बाद कैग्रेडिएंट लेयर का आकार कैसे बदलें?
यहाँ मैं क्या कर रहा है:
CAGradientLayer *gradientLayer = [CAGradientLayer layer];
gradientLayer.frame = CGRectMake(0.0, 0.0, frame.size.width, frame.size.height);
gradientLayer.colors = [NSArray arrayWithObjects:
(id)[[UIColor colorWithRed:255.0/255.0f green:255.0/255.0f blue:255.0/255.0f alpha:1.0f] CGColor],
(id)[[UIColor colorWithRed:233.0/255.0f green:233.0/255.0f blue:233.0/255.0f alpha:1.0f] CGColor], nil];
[self.layer insertSublayer:gradientLayer atIndex:0];
संभावित डुप्लिकेट [सीएएलएयर ऑटोरेसाइजिंग मास्क आईओएस एसडीके के लिए नहीं है?] (Http://stackoverflow.com/questions/8600826/calayer-autoresizingmask-not-for-ios-sdk) – CodaFi
@ कोडाफ़ी थोड़ा अलग सवाल। इसके अलावा, हालांकि उस प्रश्न के लिए एक स्वीकार्य उत्तर है, यह इस मामले के लिए प्रतीत होता है। – memmons
आप सही हैं, वह जवाब बेकार है। '-layoutSubviews' ओवरराइड करें और वहां अपने फ्रेम असाइन करें। – CodaFi