0

followやexcuteコードのようなメソッドを作成しました。

フォロー結果の画像を見た後、クォーツフレームワークの起源について混乱しています。

フォローコードと画像をご覧ください。

[ViewController.m内]

UIButtonを押したときにfollowメソッドを実行します。

- (void)test {
    [customView drawCustom];
    [customView setNeedsDisplay];
}

[CustomView.m内]

- (void)drawRect:(CGRect)rect {
    cgc_Context = UIGraphicsGetCurrentContext();

    CGContextSetLineWidth(cgc_Context, 5.0);
    CGContextSetStrokeColorWithColor(cgc_Context, [UIColor redColor].CGColor);
    CGContextMoveToPoint(cgc_Context, 0, 0);
    CGContextAddLineToPoint(cgc_Context, 200, 50);
    CGContextStrokePath(cgc_Context);
}

- (void)drawCustom {
    CGContextSetLineWidth(cgc_Context, 5.0);
    CGContextSetStrokeColorWithColor(cgc_Context, [UIColor yellowColor].CGColor);
    CGContextMoveToPoint(cgc_Context, 0, 0);
    CGContextAddLineToPoint(cgc_Context, 200, 50);
    CGContextStrokePath(cgc_Context);
}

【結果画面】

赤い線:drawRectの結果

黄色の線:drawCustomの結果

なぜ異なる原点が発生するのですか?

ここに画像の説明を入力してください

4

1 に答える 1

0

Quartz 2D Coordinate Systemsに関する Apple のドキュメントを読む必要があります。

于 2012-07-20T12:12:21.050 に答える