较小尺寸的按钮不是带有 layer.cornerRadius 的圆形
Posted
技术标签:
【中文标题】较小尺寸的按钮不是带有 layer.cornerRadius 的圆形【英文标题】:Button at smaller size not round with layer.cornerRadius 【发布时间】:2017-05-24 12:01:01 【问题描述】:我尝试创建一个按钮并使用该代码为其设置样式:
button.tintColor = UIColor.white
button.contentEdgeInsets = UIEdgeInsets(top: 20, left: 20, bottom: 20, right: 20)
button.backgroundColor = .clear
button.layer.cornerRadius = 50
button.layer.borderWidth = 2
button.layer.borderColor = UIColor.white.cgColor
我的按钮大小是 100x100,如果我把它变小(例如 80x80,如下所示),边框不再是圆形的:
我怎样才能得到圆心圆呢?
【问题讨论】:
【参考方案1】:使用下面的代码
button.layer.cornerRadius = button.frame.size.width/2
确保每次的高度和宽度都相等。
【讨论】:
它成功了,谢谢你......这么简单,但我自己没有得到它......冷却后会接受你的答案。【参考方案2】:请将角半径设置为 buttonWidth/2。我假设您的按钮具有相同的宽度和高度。
button.layer.cornerRadius = button.frame.size.width/2
【讨论】:
以上是关于较小尺寸的按钮不是带有 layer.cornerRadius 的圆形的主要内容,如果未能解决你的问题,请参考以下文章
当单元格即将离开屏幕时,UICollectionView Cell 的阴影突然消失