画实线@implementation UIView (Drawing)
-(CAShapeLayer *)drawLineFromPoint:(CGPoint)p1 toPoint:(CGPoint)p2 width:(CGFloat)width color:(UIColor *)color
{
UIBezierPath *path = [UIBezierPath bezierPath];
[path moveToPoint:p1];
[path addLineToPoint:p2];
CAShapeLayer *layer = [CAShapeLayer layer];
layer.lineWidth = width;
layer.strokeColor = color.CGColor;
layer.path = path.CGPath;
[self.layer addSublayer:layer];
return layer;
}
画虚线
- (CAShapeLayer*)dashLineFromPoint:(CGPoint)p1 toPoint:(CGPoint)p2 realLinePoint:(CGFloat)realLinePoint dashLinePoint:(CGFloat)dashLinePoint color:(UIColor*)color lineWidth:(CGFloat)lineWidth
{
//realLinePoint 单位实线长度 dashLinePoint 单位间隙长度
CAShapeLayer *layer = [self drawLineFromPoint:p1 toPoint:p2 width:lineWidth color:color];
layer.lineDashPattern = @[[NSNumber numberWithInteger:realLinePoint],[NSNumber numberWithInteger:dashLinePoint]];
return layer;
}
本文介绍了如何使用iOS开发中的UIView类别方法来绘制实线和虚线。通过UIBezierPath创建路径并设置CAShapeLayer的相关属性,实现了指定颜色、宽度及虚线模式的线条绘制。
2006

被折叠的 条评论
为什么被折叠?



