如何使用Swift圆滑UILabel的边缘

Mic*_*cia 53 ios swift

我已经查看了Xcode 6.3中标签的属性,但我还没有找到如何围绕边缘,就像你可以绕文本字段的边缘一样.

spe*_*.sm 160

诀窍是设置maskToBounds为true.然后您的修改cornerRadius将可见.

label.layer.masksToBounds = true
label.layer.cornerRadius = 5
Run Code Online (Sandbox Code Playgroud)


Tim*_*Tim 51

假设你已经backgroundColor在你的标签上添加了一个,否则无法判断它是否有边缘,你可以使用QuartzCore来圆化标签的边缘.

import QuartzCore

yourLabel.layer.backgroundColor  = UIColor.redColor().CGColor
yourLabel.layer.cornerRadius = 5
Run Code Online (Sandbox Code Playgroud)


小智 26

使用标签层角落raious做到这一点,

mylabel.layer.cornerRadius = yourvalue
Run Code Online (Sandbox Code Playgroud)

如果你不想要阴影然后添加

mylabel.layer.masksToBounds = true 
Run Code Online (Sandbox Code Playgroud)

它对我很好.

  • 请注意,这在 Swift 3 及更高版本中现在是 `clipToBounds`。 (2认同)

小智 15

你可以cornerRadius像这样给予和边界.

对于Swift 4和3

MyLable.layer.masksToBounds = true
MyLable.layer.cornerRadius = 6
MyLable.layer.borderWidth = 2
MyLable.layer.borderColor = UIColor.black.cgColor
Run Code Online (Sandbox Code Playgroud)

对于Objective-C

[MyLable.layer setMasksToBounds:TRUE];
[MyLable.layer setCornerRadius:6];
[MyLable.layer setBorderWidth:2];
[MyLable.layer setBorderColor:[UIColor blackColor].CGColor];
Run Code Online (Sandbox Code Playgroud)


Tom*_*mmy 14

绕过任何角落的方法CALayer是修改layer.cornerRadius.默认情况下,它仅影响背景颜色和您应用的任何图层边框.您还可以启用clipsToBounds剪辑像素内容.

当一个视图(例如UILabel绘制自身)时,它会将自身绘制到图层的像素内容中.您可以抓取view.layer以访问该图层.

因此,您可以设置该图层的圆角半径以影响视图的背景颜色.您还可以启用clipsToBounds裁剪视图中的任何内容.如果视图本身不是太靠近边缘,那应该达到你想要的效果.标签应该是正确的.

  • 很棒的答案!基本上它意味着你必须添加这一行:L.backgroundColor = UIColor.blackColor(); L.layer.cornerRadius = 5.0; L.clipsToBounds = true //其中L是你的UILabel (4认同)

Eri*_*yen 8

选择你的 UILabel

在检查器中,添加layer.masksToBoundslayer.cornerRadius

轻松实现标签圆角的方法

在您的课程中处理的代码更少