我有一个自定义视图,可以绘制动画 - 只是不同的线条,每条线条都有不同的颜色。当用户输入信息时,这些行显示在按钮上并创建到不同UILabel的行。
我正在关注本教程techotopia.com core graphics iOS 7 tutorial
它说要使UIView成为一个自定义类并将绘图放在drawRect:
内 - 通过典型的上下文创建,添加线条,笔触,颜色等等。好的,但是如何获得多行?要同时绘制不同的颜色?
我是否需要为每一行创建图层?每行的新自定义类和视图?
如果我打电话给CGPathCloseSubpath
,那么我可以创建一个新的起点吗?
如何更改新行的颜色,是否需要为新行创建新上下文?
答案 0 :(得分:1)
使用UIBezierPath比CGPath和CGContext更容易。
-(void)drawRect:(CGRect)rect
{
UIBezierPath *line1 = [UIBezierPath bezierPath];
[line1 moveToPoint:CGPointMake(0, 0)];
[line1 addLineToPoint:CGPointMake(100, 0)];
[[UIColor redColor] set]; //Set color to red
[line1 stroke];
UIBezierPath *line2 = [UIBezierPath bezierPath];
[line2 moveToPoint:CGPointMake(0, 10)];
[line2 addLineToPoint:CGPointMake(100, 10)];
[[UIColor blueColor] set]; //Change color to blue
[line2 stroke];
}