我正在 Swift 中工作,我已经以编程方式创建了一个按钮。当我以编程方式制作东西时,我使用比率,因为我在自动布局方面遇到了很多问题。我在 5 秒上运行它,所以比率是正确的。我的代码:
menuBtn1.frame = CGRectMake(0, 0, screenSize.width * (50/330), screenSize.height * (50/568))
menuBtn1.backgroundColor = colorWithHexString(chosenColor)
menuBtn1.layer.cornerRadius = menuBtn1.bounds.width*0.5
menuBtn1.clipsToBounds = true
menuBtn1.center = CGPointMake(screenSize.width * 0.5, screenSize.height * (0.88))
menuBtn1.addTarget(self, action: ":", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(menuBtn1)
虽然比例可能是问题,但我什至在将高度和宽度设置为 50 和 50 时也遇到了这个问题。我的圆并不完美 - 它有平坦的边缘:
这不是一个大问题,但看起来不太好 - 我怎样才能画出一个完美的圆?为什么会有边缘?
最佳答案
圆需要其宽度
等于高度
:
CGRectMake(0, 0, screenSize.width * (50/330), screenSize.height * (50/568))
肯定会不满足这个前提条件。
您可能只想:
let size = screenSize.width * (50 / 330)
menuBtn1.frame = CGRectMake(0, 0, size, size)
关于Swift - 以编程方式制作的按钮不是完美的圆形吗?边缘平坦?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38225953/