पर आंतरिक छाया लागू करें मैं एक UILabel में आंतरिक छाया लागू करना चाहता हूं। मेरे पास एक समाधान है, लेकिन यह काफी अच्छा नहीं है। बेहतर समाधान वाला कोई भी व्यक्ति?UILabel
// UILabel subclass
- (void) drawTextInRect:(CGRect)rect {
CGSize myShadowOffset = CGSizeMake(0, 2);
float myColorValues[] = {255, 0, 0, 1};
CGContextRef myContext = UIGraphicsGetCurrentContext();
CGContextSaveGState(myContext);
CGColorSpaceRef myColorSpace = CGColorSpaceCreateDeviceRGB();
CGColorRef myColor = CGColorCreate(myColorSpace, myColorValues);
CGContextSetShadowWithColor (myContext, myShadowOffset, 5, myColor);
CGContextSetBlendMode(myContext, kCGBlendModeLighten);
[super drawTextInRect:rect];
CGColorRelease(myColor);
CGColorSpaceRelease(myColorSpace);
CGContextRestoreGState(myContext);
}
मैं UILabel की परत संपत्ति से परिचित हूँ, लेकिन shadow offset
(जब तक मैं कुछ याद कर रहा हूँ) हमें एक बाहरी छाया, नहीं भीतरी छाया देता है।
क्या आपने myShadowOffset में नकारात्मक मानों का प्रयास किया है? – adam