美文网首页iOS Developer
为控件指定角设置圆角大小

为控件指定角设置圆角大小

作者: 海到尽头天为岸 | 来源:发表于2017-07-13 17:06 被阅读27次

我们在实际项目开发中可能会遇到对控件的某个角设置圆角,并且可能不同角的圆角大小也不同。在这里记录一下我的解决办法:

    let testView = UIView(frame: CGRect(x: 50, y: 100, width: 200, height: 100))
    testView.backgroundColor = UIColor.red
    //在这里统一设置四个角的圆角
    testView.layer.cornerRadius = 5
    testView.layer.masksToBounds = true
    self.view.addSubview(testView)
    
    //通过贝塞尔曲线画圆角
    let fieldPath:UIBezierPath = UIBezierPath.init(roundedRect: testView.bounds,           
    //我在这里指定了三个角,设置不同的圆角大小
    byRoundingCorners: [.topLeft,.bottomRight,.bottomLeft] , cornerRadii:     
    CGSize(width: 15, height: 15))
    let fieldLayer:CAShapeLayer = CAShapeLayer()
    fieldLayer.frame = testView.bounds
    fieldLayer.path = fieldPath.cgPath
    testView.layer.mask = fieldLayer

效果图如下:

image.png

相关文章

网友评论

    本文标题:为控件指定角设置圆角大小

    本文链接:https://www.haomeiwen.com/subject/cwtghxtx.html