1.用Bezier曲线绘制火柴人
UIBezierPath * path = [[UIBezierPath alloc]init];
[path moveToPoint:CGPointMake(175, 100)];
// 中心点,角度,起始角度,终止角度,顺逆时针
[path addArcWithCenter:CGPointMake(150, 100) radius:25 startAngle:0 endAngle:2*M_PI clockwise:YES];
[path moveToPoint:CGPointMake(150, 125)];
[path addLineToPoint:CGPointMake(150,175)];
[path addLineToPoint:CGPointMake(125, 225)];
[path moveToPoint:CGPointMake(150, 175)];
[path addLineToPoint:CGPointMake(175, 225)];
[path moveToPoint:CGPointMake(100, 150)];
[path addLineToPoint:CGPointMake(200, 150)];
// 利用CAShapeLayer控制bezier属性
CAShapeLayer * shapeLayer = [CAShapeLayer layer];
// 颜色
shapeLayer.strokeColor = [UIColor redColor].CGColor;
//
shapeLayer.fillColor = [UIColor clearColor].CGColor;
// 线宽
shapeLayer.lineWidth = 5;
shapeLayer.lineJoin = kCALineJoinRound;
shapeLayer.lineCap = kCALineCapRound;
shapeLayer.path = path.CGPath;
[view.layer addSublayer:shapeLayer];
2.用CATextLayer显示文字
CATextLayer * textLayer = [CATextLayer layer];
textLayer.frame = view.bounds;
[view.layer addSublayer:textLayer];
textLayer.foregroundColor = [UIColor blackColor].CGColor;
textLayer.alignmentMode = kCAAlignmentJustified;
// 在layer的范围内自适应
textLayer.wrapped = YES;
UIFont * font = [UIFont systemFontOfSize:15.];
CFStringRef fontName = (__bridge CFStringRef)font.fontName;
CGFontRef fontRef = CGFontCreateWithFontName(fontName);
textLayer.font = fontRef;
textLayer.fontSize = font.pointSize;
CGFontRelease(fontRef);
NSString * text = @"月落乌啼霜满天,江枫渔火对愁眠.姑苏城外寒山寺,夜半钟声到客船.";
textLayer.string = text;
// 以Retina方式显示文字
textLayer.contentsScale = [UIScreen mainScreen].scale;
3.CAGradientLayer颜色渐变
CAGradientLayer * gradientLayer = [CAGradientLayer layer];
gradientLayer.frame =view.bounds;
[view.layer addSublayer:gradientLayer];
gradientLayer.colors = @[(__bridge id)[UIColor redColor].CGColor,(__bridge id)[UIColor blueColor].CGColor];
// 左上角(红)
gradientLayer.startPoint = CGPointMake(0, 0);
// 右下角(蓝)
gradientLayer.endPoint = CGPointMake(1, 1);