按钮圆角只有.TopRight和.BottomRight带约束

时间:2016-01-12 15:01:59

标签: ios swift uibutton

Helo家伙我找到How to create rounded UIButton with top-left & bottom-left corner radius only并且正在工作。但问题是当按钮有一些约束时它会突然停止工作。任何人都可以帮助我,我尝试改变一切,但仍然没有结果。

enter image description here

正如你可以在图片上看到它在图片顶部的第一个橙色按钮工作但是对于TWITTER按钮它不工作。有什么帮助吗?

extension UIButton{
func roundCorners(corners:UIRectCorner, radius: CGFloat) {
    let path = UIBezierPath(roundedRect: self.bounds, byRoundingCorners: corners, cornerRadii: CGSize(width: radius, height: radius))
    let mask = CAShapeLayer()
    mask.path = path.CGPath
    self.layer.mask = mask
  }
}

这是用法(testBtn是橙色工作按钮)

testBtn.roundCorners([.TopRight, .BottomRight], radius: 20)
    facebookBtn.roundCorners([.TopLeft, .BottomLeft], radius: 20)
    twitterBtn.roundCorners([.TopRight, .BottomRight], radius: 20)

0 个答案:

没有答案