原文地址: http://blog.csdn.net/ashimar_a/article/details/53033361
代码如下:
#import "ViewController.h"
#import <QuartzCore/QuartzCore.h>
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
[self dashLine];
}
- (void)dashLine
{
CAShapeLayer *shapeLayer = [CAShapeLayer layer];
[shapeLayer setBounds:self.view.bounds];
[shapeLayer setPosition:CGPointMake(self.view.frame.size.width / 2.0, self.view.frame.size.height)];
[shapeLayer setFillColor:[UIColor clearColor].CGColor];
//设置虚线颜色
[shapeLayer setStrokeColor:[UIColor redColor].CGColor];
//设置虚线宽度
[shapeLayer setLineWidth:0.5];
[shapeLayer setLineJoin:kCALineJoinRound];
//设置虚线的线宽及间距
[shapeLayer setLineDashPattern:[NSArray arrayWithObjects:[NSNumber numberWithInt:5], [NSNumber numberWithInt:1], nil]];
//创建虚线绘制路径
CGMutablePathRef path = CGPathCreateMutable();
//设置虚线绘制路径起点
CGPathMoveToPoint(path, NULL, 0, 0);
//设置虚线绘制路径终点
CGPathAddLineToPoint(path, NULL, self.view.frame.size.width, 0);
//设置虚线绘制路径
[shapeLayer setPath:path];
CGPathRelease(path);
//添加虚线
[self.view.layer addSublayer:shapeLayer];
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end