UIImageView的圆顶角像UIButton

时间:2016-01-22 11:38:58

标签: ios swift uiimageview uibutton

这是我的问题:我试图将UIImageView的顶角变成圆角的UIButton。我正在使用面具来做到这一点,但我得到的结果并不是我真正期待的......

我使用以下扩展程序:

extension UIView
{
  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
  }
}

在我的代码中调用它:

imageView.roundCorners([.TopLeft, .TopRight], radius: 80)

结果如下: Rounded corners error

我希望顶角看起来像底角(底角是半径为10的UIButton角),但我不知道错误在哪里......

谢谢大家的帮助!

编辑: 我使用了正确的代码,我只是没有注意到我的UIImageView比UIImage大,因此奇怪的角落......我以编程方式创建UIImageView,因此没有注意到大小差异......新手的错误...

谢谢大家的帮助!

1 个答案:

答案 0 :(得分:1)

使用此值:

imageView([.TopLeft, .TopRight], radius: 20)

Result is