Нарисуйте линию, используя CGPath

Как рисовать строку с помощью CGPath?

Ответ 1

Как вы не указали больше, чем рисовать линию с помощью пути, я просто приведу вам пример.

Рисование диагональной линии между верхним левым и нижним правыми (на iOS) с помощью пути в UIView drawRect:

- (void)drawRect:(CGRect)rect { 
    CGContextRef ctx = UIGraphicsGetCurrentContext();
    CGMutablePathRef path = CGPathCreateMutable();
    CGPathMoveToPoint(path, NULL, 0, 0);
    CGPathAddLineToPoint(path, NULL, CGRectGetMaxX(rect), CGRectGetMaxY(rect));
    CGPathCloseSubpath(path);
    CGContextAddPath(ctx, path);
    CGContextSetStrokeColorWithColor(ctx,[UIColor whiteColor].CGColor);
    CGContextStrokePath(ctx);
    CGPathRelease(path);
}

Ответ 2

theView.h

#import <UIKit/UIKit.h>

@interface theView : UIView {
}

@end

theView.m

#import "theView.h"

@implementation theView

-(void)drawRect:(CGRect)rect {

    CGContextRef context = UIGraphicsGetCurrentContext(); 
    CGContextSetStrokeColorWithColor(context, [UIColor redColor].CGColor);
    CGContextSetLineWidth(context, 2.0);
    CGContextMoveToPoint(context,0,0);
    CGContextAddLineToPoint(context,20,20);
    CGContextStrokePath(context);
}

@end

Создайте файлы, упомянутые выше.
Окно-приложение: добавьте новый UIView и измените его класс на. Приложение на основе View: измените класс UIView на theView.
Наконец, нажмите "build and run":)

Результат: красная диагональная линия.