Я пытаюсь нарисовать несколько линий внутри своего пользовательского UIView.
Из того, что я вижу, чтобы избежать возни с CoreGraphics, я могу использовать UIBezierPath (я сделал то же самое с NSBezierPath на Mac).
У меня есть некоторый код, который пытается нарисовать линии, но я получаю ошибки вывода и не могу найти достойную ссылку с некоторым примером кода, чтобы проиллюстрировать, что происходит, какие-нибудь идеи?
Код ниже ...
Код:
- (void)drawRect:(CGRect)rect {
// Drawing code
UIBezierPath *line1 = [UIBezierPath bezierPath];
[[UIColor blackColor] setStroke];
[line1 setLineWidth:3];
[line1 moveToPoint:CGPointMake(0, 0)];
[line1 addLineToPoint:CGPointMake(320, 480)];
[line1 stroke];
}
Ошибка:
Sat Oct 2 19:26:43 mercury.config mobileManual[46994] <Error>: CGContextSetStrokeColorWithColor: invalid context 0x0
ОБНОВЛЕНИЕ: Вот текущий код, без ошибок, но и без рисунка .. идеи?
// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad {
[super viewDidLoad];
[self.view setBackgroundColor:[UIColor yellowColor]];
[self.view setNeedsDisplay];
}
- (void)drawRect:(CGRect)rect {
// Drawing code
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextSaveGState(context);
UIBezierPath *line1 = [UIBezierPath bezierPath];
[line1 setLineWidth:3];
[line1 moveToPoint:CGPointMake(0, 0)];
[line1 addLineToPoint:CGPointMake(320, 480)];
[line1 stroke];
CGContextRestoreGState(context);
}