使用多种颜色来抚摸上下文

时间:2013-03-23 15:05:58

标签: ios objective-c quartz-graphics

我正在绘制图形,我希望上升线为绿色,下降线为红色。我尝试了以下方法:

CGContextRef context = UIGraphicsGetCurrentContext();

CGContextSetLineWidth(context, 2);
CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);

CGPoint previousPoint = CGPointMake(0.0, 0.0);

//graph the points
for (int i = 0; i < self.numberOfS; i++) {
    CGPoint currentPoint = CGPointMake(150+(40*[[[self.grades objectAtIndex:i] s] doubleValue]), 59+(40*(i+1)));
    if (previousPoint.x != 0.0f) {
        if (previousPoint.x > currentPoint.x) {
            CGContextMoveToPoint(context, previousPoint.x, previousPoint.y);
            CGContextSetStrokeColorWithColor(context, [UIColor greenColor].CGColor);
            CGContextAddLineToPoint(context, 150+(40*[[[self.grades objectAtIndex:i] semesterGPA] doubleValue]), 59+(40*(i+1)));
        } else{
            CGContextMoveToPoint(context, previousPoint.x, previousPoint.y);
            CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);
            CGContextAddLineToPoint(context, 150+(40*[[[self.grades objectAtIndex:i] semesterGPA] doubleValue]), 59+(40*(i+1)));
        }

    }
    previousPoint.x = currentPoint.x;
    previousPoint.y = currentPoint.y;
} 

但它不起作用,一切都是红色的。我怎样才能解决这个问题 ?

1 个答案:

答案 0 :(得分:0)

好的解决了这个问题,我刚刚输入了这行代码:

CGContextStrokePath(context);