我正在尝试制作一个完全圆形的按钮。我已经在代码中创建了它,并设置了如下约束:
addButton.widthAnchor.constraint(equalTo: view.widthAnchor, multiplier: 0.2).isActive = true
addButton.heightAnchor.constraint(equalTo: addButton.widthAnchor).isActive = true
addButton.bottomAnchor.constraint(equalTo: view.safeAreaLayoutGuide.bottomAnchor, constant: -30).isActive = true
addButton.rightAnchor.constraint(equalTo: view.safeAreaLayoutGuide.rightAnchor, constant: -30).isActive = true
然后我尝试使用以下方法设置按钮的拐角半径:
addButton.layer.cornerRadius =
addButton.layer.masksToBounds = true
但是我不知道在拐角半径中要放什么。我已经尝试过frame.width / 2,但按钮仍然是正方形。我需要获取宽度约束的值,但无法将其转换为CGFloat。
有关如何执行此操作的任何建议?
谢谢
答案 0 :(得分:2)
放入viewDidLayoutSubviews
内
addButton.layer.cornerRadius = self.view.frame.width * 0.1
答案 1 :(得分:0)
您可以使用 @Sh_Khan (URL:https://stackoverflow.com/a/51808795/7425588)发布的上述答案,也可以使用以下答案:
addButton.layer.cornerRadius = addButton.widthAnchor.constant / 2.0
addButton.clipToBounds = true
记住要使UIObject完整圆形,使其高度和宽度相等或纵横比为1:1。将clip的边界设置为true,并将角半径设置为宽度或高度的一半。