在iOS中绘制一条线

时间:2014-08-07 09:17:18

标签: ios core-graphics drawrect

我有一个在PlotView课程中绘制的情节。此类继承自CPTGraphHostingView

我想画一条线 OVER 。我想通过触摸来上下移动这条线。该行的开头应该有一个箭头,所以它不仅仅是一条线(即使用额外的轴作为一条线并不能解决问题)。

我在PlotView类中编写了这段代码,它绘制了一个示例行(我可以通过绘制添加箭头,它没有问题):

- (void)drawRect:(CGRect)rect {

    CGContextRef context = UIGraphicsGetCurrentContext();
    CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);

    // Draw them with a 2.0 stroke width so they are a bit more visible.
    CGContextSetLineWidth(context, 2.0f);

    CGContextMoveToPoint(context, 0.0f, 0.0f); //start at this point

    CGContextAddLineToPoint(context, 20.0f, 20.0f); //draw to this point

    // and now draw the Path!
    CGContextStrokePath(context);
}

但显然我称之为:

[plotController viewWillAppear:false];

plotControllerPlotController的实例)我无法调用

[plotController setNeedsDisplay];

enter image description here

有关如何绘制此行的任何建议吗?

非常感谢你的帮助。

1 个答案:

答案 0 :(得分:0)

UIViewController类没有方法setNeedsDisplay。 UIView类确实有这种方法。所以你可以这样写:

[plotController.view setNeedsDisplay];