I\'m currently looking at a UILabel with the property addMessageLabel.layer.cornerRadius = 5.0f;
On a device with iOS 7.0 installed, it has rounded corners. On a de
Try the followings,
[[addMessageLabel layer] setCornerRadius:5.0f];
[[addMessageLabel layer] setMasksToBounds:YES];
//or
[addMessageLabel setClipsToBounds:YES];
Swift
addMessageLable.layer.cornerRadius = 5.0
addMessageLable.layer.masksToBounds = true
//or
addMessageLable.layer.clipsToBounds = true
Add the Following Code as extension for UIView
//// Story board Extra Feature for create border radius, border width and border Color
extension UIView {
/// corner radius
@IBInspectable var borderColor: UIColor? {
set {
layer.borderColor = newValue!.cgColor
}
get {
if let color = layer.borderColor {
return UIColor(cgColor: color)
} else {
return nil
}
}
}
@IBInspectable var borderWidth: CGFloat {
set {
layer.borderWidth = newValue
}
get {
return layer.borderWidth
}
}
@IBInspectable var cornerRadius: CGFloat {
set {
layer.cornerRadius = newValue
clipsToBounds = newValue > 0
}
get {
return layer.cornerRadius
}
}
}
After that you will get the following attributes in interface builder itself.!
Set the property clipsToBounds
to true
addMessageLabel.clipsToBounds = true
I think the best way to set corner radius is:
and be sure the "Clip Subviews" is checked:
Checking "Clip Subviews" is equal to the code addMessageLabel.clipsToBounds = YES;
.
My issue was a bit different.
While I did do btn.clipsToBounds = true
I wasn't setting doing:
btn.layer.cornerRadius = 20
Because I had different screen sizes. Instead I followed this answer and did:
override func layoutSubviews() {
seeMoreButton.layer.cornerRadius = seeMoreButton.bounds.size.height / 2
}
It wasn't working because I forgot to add super.layoutSubviews()
. The correct code is:
override func layoutSubviews() {
super.layoutSubviews()
seeMoreButton.layer.cornerRadius = seeMoreButton.bounds.size.height / 2
}
I have tried the below one and i got an successful output.
yourlabelname.layer.cornerRadius = 10.0f;
[yourlabelname setClipsToBounds:YES];
Is there something else which is stopping you?