ここであまり言うことはありません。ちょうど、私のUIViewにSTROKEは追加されていません。drawRectを使用して私自身のUIViewに描画
#import "DrawingLayerView.h"
@implementation DrawingLayerView
UIBezierPath *newPath;
- (void)startTouch:(CGPoint)point;
{
[newPath moveToPoint:point];
}
- (void)drawRect:(CGRect)rect {
[[UIColor redColor] setStroke];
[newPath stroke];
}
- (void)drawShape:(CGPoint)point
{
[newPath addLineToPoint: point]; // (4)
[self setNeedsDisplay];
}
- (void)endTouch:(CGPoint)point {
[newPath removeAllPoints];
}
@end
DrawingLayerView.h
私UIView
のカスタムクラスです。
drawRect
関数は必ず呼び出されますが、ストロークは作成されていません。
詳細情報が必要な場合。ちょうど私に教えて、私はそれを取得します!
ダンは言ったように、 'newPath'をグローバルと宣言しました。あなたがivarにしたい場合は、宣言の前に '{'を、宣言の後に '} 'を入れてください。または、それをプライベートクラス拡張に移動します。あるいは、それをプロパティにします(また、このプロパティを.mファイルのprivateクラス拡張に入れることで、privateプロパティになります)。 – Rob