मैं पाया गया हर एक तरीका कोशिश कर रहा हूं लेकिन मैं इसे बनाने में सक्षम नहीं था। मैं बस गोल पैटर्न के साथ एक लेबल बनाना चाहता हूं, पृष्ठभूमि पैटर्न के साथ एक बूंद छाया। छाया केवल तभी काम करती है जब मैं गोल कोनों को नहीं चाहता। मैं उन्हें दोनों एक साथ नहीं मिल सकता!गोलाकार कोनों, ड्रॉप छाया और पृष्ठभूमि पैटर्न के साथ एक UILabel
label.text = msg;
label.textAlignment = UITextAlignmentCenter;
label.frame = CGRectMake(20,10,280,40);
label.backgroundColor
= [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"msg_box_bg.png"]];
[label.layer setCornerRadius:10];
[label.layer setMasksToBounds:NO];
/* Shadow */
label.layer.shadowColor = [UIColor blackColor].CGColor;
label.layer.shadowOpacity = 0.6;
label.layer.shadowOffset = CGSizeMake(0,0);
label.layer.shadowRadius = 3;
यह मैं गोलाकार कोनों के बिना छाया देता है:
यहाँ छाया के साथ मेरी कोड है। लेकिन अगर मैं
यह मुझे बिना छाया के गोलाकार कोनों देगा। मैं सलाह एक छाया पथ का उपयोग करने के लिए लिया है, तो छाया पथ के साथ कोड इस तरह दिखता है:
label.text = msg;
label.textAlignment = UITextAlignmentCenter;
label.frame = CGRectMake(20,10,280,40);
label.backgroundColor
= [[UIColor alloc] initWithPatternImage:[UIImage imageNamed:@"msg_box_bg.png"]];
[label.layer setCornerRadius:10];
[label.layer setMasksToBounds:YES];
/* Shadow */
label.layer.shadowColor = [UIColor blackColor].CGColor;
label.layer.shadowOpacity = 0.6;
label.layer.shadowOffset = CGSizeMake(0,0);
label.layer.shadowRadius = 3;
label.layer.shadowPath = [[UIBezierPath bezierPathWithRoundedRect:label.frame cornerRadius:10]CGPath];
label.layer.shouldRasterize = YES;
इस कोड को दे मुझे कोनों लेकिन कोई छाया गोल करता है। कोई सुझाव?
धन्यवाद!
http://stackoverflow.com/questions/3690972/why-maskstobounds-yes-prevents-calayer-shadow –