阴影到标签

时间:2012-02-22 06:40:05

标签: iphone objective-c xcode

我需要在标签的所有方面添加阴影。它看起来像这样。

enter image description here 我怎么能这样做?请帮忙。我正在使用shadowOffset,但它并没有给所有方面留下阴影。请帮忙。

2 个答案:

答案 0 :(得分:0)

假设您正在询问如何添加白色轮廓,则无法使用普通UILabel执行此操作。您需要使用Core Graphics(也称为Quartz 2D)绘制文本。像这样:

CGContextRef gc = UIGraphicsGetCurrentContext();
CGContextSaveGState(gc); {
    CGContextSetTextDrawingMode(gc, kCGTextFillStroke);
    CGContextSetFillColorWithColor(gc, UIColor.blueColor.CGColor);
    CGContextSetStrokeColorWithColor(gc, UIColor.whiteColor.CGColor);
    CGContextSetLineJoin(gc, kCGLineJoinRound);
    CGContextSetLineWidth(gc, 2);
    CGContextSetShadowWithColor(gc, CGSizeMake(-1, 2), 2, UIColor.blackColor.CGColor);
    [@"Card" drawAtPoint:CGPointMake(0, 20) withFont:[UIFont systemFontOfSize:18]];
} CGContextRestoreGState(gc);

答案 1 :(得分:0)

我通过nicklockwood on gitHub遇到了一个项目。它通过提供支持软阴影,内部阴影和渐变填充的子类来改进标准UILabel,并且可以轻松地用于代替任何标准UILabel。看看它。它对您有用。