bre*_*ine 2 draw uiview ios uibezierpath swift
我想在这样的视图的底部绘制一个弧形:
背景图案是另一回事,但是我认为可以使用uibezierpath之类的东西来完成?我没有太多经验,任何入门点吗?谢谢
将此自定义类分配给IB中的视图
class CurveView:UIView {
var once = true
override func layoutSubviews() {
super.layoutSubviews()
if once {
let bb = UIBezierPath()
bb.move(to: CGPoint(x: 0, y: self.frame.height))
// the offset here is 40 you can play with it to increase / decrease the curve height
bb.addQuadCurve(to: CGPoint(x: self.frame.width, y: self.frame.height), controlPoint: CGPoint(x: self.frame.width / 2 , y: self.frame.height + 40 ))
bb.close()
let l = CAShapeLayer()
l.path = bb.cgPath
l.fillColor = self.backgroundColor!.cgColor
self.layer.insertSublayer(l,at:0)
once = false
}
}
}
Run Code Online (Sandbox Code Playgroud)
//
| 归档时间: |
|
| 查看次数: |
862 次 |
| 最近记录: |