2012-02-22 117 views
1

我需要爲標籤的所有邊添加陰影。它看起來像這樣。陰影與標籤

enter image description here 如何做到這一點?請help.I使用shadowOffset,但它不給所有side.Please幫助影子。

+0

這不是一個影子,它是一個輪廓。 – EmilioPelaez 2012-02-22 06:46:03

+0

你在問如何得到字母周圍的白色輪廓? – 2012-02-22 06:48:48

+0

@ rob可能會關閉是的,我正在詢問關於白色輪廓。 – hgpl 2012-02-22 07:03:48

回答

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); 
+0

沒有它仍然無法正常工作 – hgpl 2012-02-22 09:21:28

0

我碰到過一個項目nicklockwood on gitHub。它通過提供一個支持軟陰影,內部陰影和漸變填充的子類來改進標準UILabel,並且它可以很容易地用於替代任何標準UILabel。請看它。它對您有用。