首页 > 移动平台 > 详细

iOS开发之UIBezierPath初步使用

时间:2016-02-23 00:47:25      阅读:262      评论:0      收藏:0      [点我收藏+]

首先熟悉一下BezierPath的用法

定义path,此处用CGRect为例

let path = UIBezierPath(rect: CGRectMake(100, 100, 100, 100))

 再定义一个Layer

let myLayer = CAShapeLayer()

 将path赋给layer,再加上一些其它属性

myLayer.path = path.CGPath
myLayer.fillColor = UIColor.magentaColor().CGColor
myLayer.strokeColor = UIColor.blackColor().CGColor

最后添加

view.layer.addSublayer(myLayer)

 运行起来得到??效果

技术分享

其中path有很多设置方法,下面尝试其它形状

let path = UIBezierPath(roundedRect: CGRectMake(100, 100, 100, 100), cornerRadius: 10)

 技术分享

let path = UIBezierPath(roundedRect: CGRectMake(100, 100, 100, 100), cornerRadius: 50)

 技术分享

let path = UIBezierPath(ovalInRect: CGRect(x: 100, y: 100, width: 100, height: 200))

 技术分享

下面也是画圆的path,设置了startAngle和endAngle,注意此处用的是CGFloat!

let path = UIBezierPath(arcCenter: view.center, radius: 50.0, startAngle: 0.0, endAngle: CGFloat(M_PI * 2), clockwise: true)

 技术分享

稍稍改动一下

let path = UIBezierPath(arcCenter: view.center, radius: 50.0, startAngle: 0.0, endAngle: CGFloat(M_PI), clockwise: true)

 技术分享

clockwise是顺时针的意思,改为false试试

let path = UIBezierPath(arcCenter: view.center, radius: 50.0, startAngle: 0.0, endAngle: CGFloat(M_PI), clockwise: false)

 技术分享

这里的startAngle和endAngle都用弧度制表示,下图为方便参考

技术分享

 

iOS开发之UIBezierPath初步使用

原文:http://www.cnblogs.com/ybw123321/p/5208553.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!