Ответ 1
Установите для свойства clipsToBounds
значение true
addMessageLabel.clipsToBounds = true
В настоящее время я смотрю на UILabel со свойством addMessageLabel.layer.cornerRadius = 5.0f;
На устройстве с установленной iOS 7.0 он имеет закругленные углы. На устройстве с установленным iOS 7.1 он не имеет закругленных углов.
Это просто ошибка с iOS 7.1?
Установите для свойства clipsToBounds
значение true
addMessageLabel.clipsToBounds = true
Я думаю, что лучший способ задать угловой радиус:
и убедитесь, что отмечен "Подвижность клипов":
Проверка "Подвижность клипа" равна коду addMessageLabel.clipsToBounds = YES;
.
Добавьте две приведенные ниже строки и проверьте их.
[[addMessageLabel layer] setCornerRadius:5.0f];
[[addMessageLabel layer] setMasksToBounds:YES];
ИЛИ
[addMessageLabel setClipsToBounds:YES];
Моя проблема была немного иной.
Пока я делал btn.clipsToBounds = true
Я не настраивал:
btn.layer.cornerRadius = 20
Потому что у меня были разные размеры экрана. Вместо этого я выполнил этот ответ и сделал:
override func layoutSubviews() {
seeMoreButton.layer.cornerRadius = seeMoreButton.bounds.size.height / 2
}
Он не работал, потому что я забыл добавить super.layoutSubviews()
. Правильный код:
override func layoutSubviews() {
super.layoutSubviews()
seeMoreButton.layer.cornerRadius = seeMoreButton.bounds.size.height / 2
}
Я попробовал следующее, и я получил успешный выход.
yourlabelname.layer.cornerRadius = 10.0f;
[yourlabelname setClipsToBounds:YES];
Есть ли что-то еще, что останавливает вас?
//works perfect in Swift 2.0 for a circular or round image
@IBOutlet var theImage: UIImageView!
override func viewDidLoad() {
super.viewDidLoad()
//Make sure the width and height are same
self.theImage.layer.cornerRadius = self.theImage.frame.size.width / 2
self.theImage.layer.borderWidth = 2.0
self.theImage.layer.borderColor = UIColor.whiteColor().CGColor
self.theImage.clipsToBounds = true
}
yourlabelname.layer.cornerRadius = yourlabelname.frame.size.width/2;
[yourlabelname setClipsToBounds:YES];
Убедитесь, что вы проверяете соответствующую цель развертывания.
Добавьте следующий код в качестве расширения для 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
}
}
}
После этого вы получите следующие атрибуты в самом конструкторе интерфейсов.!