मुझे समझ में नहीं आता कि दृश्य में जो छाया जोड़ा गया था उसे कैसे हटाया जाए। मैं इस तरह से एक छाया initWithFrame
में मेरे विचार में जोड़ें:आईओएस एक दृश्य से छाया जोड़ें/हटाएं
self.layer.borderWidth = 2;
self.layer.borderColor = [UIColor clearColor].CGColor;
self.backgroundColor = [UIColor greenColor];
[self.layer setCornerRadius:8.0f];
CALayer *layer = self.layer;
layer.shadowOffset = CGSizeMake(2, 2);
layer.shadowColor = [[UIColor blackColor] CGColor];
layer.cornerRadius = 8.0f;
layer.shadowRadius = 3.0f;
layer.shadowOpacity = 0.80f;
layer.shadowPath = [[UIBezierPath bezierPathWithRect:layer.bounds] CGPath];
एप्लिकेशन के निष्पादन में बाद मैं इस दृश्य से छाया निकालना चाहते हैं। मैं का उपयोग कर की कोशिश की है:
layer.hidden = YES;
या
self.layer.hidden = YES;
लेकिन इस दृश्य को पूरी तरह से, न सिर्फ जोड़ा छाया छुपाता है।
क्या दृश्य से जोड़ा गया छाया पुनर्प्राप्त करने का कोई तरीका है और फिर इसे छुपाएं? धन्यवाद!
क्या कोई कारण है आप अपने कोड के बीच में 'self.layer' पर इंगित एक स्थानीय' परत' चर घोषित करते हैं? –
मैंने पढ़ा है कि प्रदर्शन कारण के लिए बेहतर हो सकता है UIBezierPath के साथ छाया छाया घोषित करें, है ना? ऐसा करने का सबसे अच्छा अभ्यास है? –