UIlabel layer.cornerRadius无法在iOS 7.1中使用
我目前正在寻找与属性addMessageLabel.layer.cornerRadius = 5.0f;
的UILabel addMessageLabel.layer.cornerRadius = 5.0f;
在安装有iOS 7.0的设备上,它具有圆angular。 在装有iOS 7.1的设备上,它没有圆angular。
这只是一个与iOS 7.1的错误?
将属性clipsToBounds
设置为YES
addMessageLabel.clipsToBounds = YES;
我认为设置拐angular半径的最佳方法是:
并确保选中“剪辑子视图”:
检查“Clip Subviews”等于代码addMessageLabel.clipsToBounds = YES;
。
添加下面两行并检查它。
[[addMessageLabel layer] setCornerRadius:5.0f]; [[addMessageLabel layer] setMasksToBounds:YES];
要么
[addMessageLabel setClipsToBounds:YES];
我已经尝试了下面的一个,我得到了一个成功的输出。
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];
确保您正在检查适当的部署目标。
我的问题有点不同。
虽然我做了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 }