Quartz를 지금 공부하고 있고 다음과 같은 데모를하고 싶습니다. 손가락이 iPhone 화면에서 움직일 때 붉은 색으로 트랙이 표시됩니다. 코드는 : Quartz2d로 iPhone에서 그림을 그리는 방법
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [touches anyObject];
_firstPoint = [touch locationInView:self];
}
- (void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
UITouch *touch = [touches anyObject];
_endPoint = [touch locationInView:self];
[self setNeedsDisplay];
_firstPoint = _endPoint;
}
는 여기
- (void)drawRect:(CGRect)rect {
// Drawing code.
CGContextRef _context = UIGraphicsGetCurrentContext();
CGContextSetRGBStrokeColor(_context, 1, 0, 0, 1);
CGContextMoveToPoint(_context, _firstPoint.x, _firstPoint.y);
CGContextAddLineToPoint(_context, _endPoint.x, _endPoint.y);
CGContextStrokePath(_context);
}
, _firstPoint 및 _endPoint는 CGPoint이 위치를 기록한다. 그러나 트랙을 표시하지 않습니다. 나는 무엇이 문제인지 모른다. 팁을주십시오.
마지막으로, 나는 그런 종류의 App을 수행하는 것이 옳은지 컨설턴트에게 알려 드리고 싶습니다.
감사합니다.
나는 그다지 이해하지 못한다. 나는 모든 포인트를 저장하고 그것을 모두 TouchesEnded에 그려야합니까? 나는 내가 움직이면 그 점을 스크린에 추가하여 선으로 칠할 것입니다. – scorpiozj
나는 그것을 시도하고 작동합니다. 고맙습니다! 질문이 하나 더 있습니다.이 경우 이동하면 원본 컨텍스트의 일부가 영향을받습니다. 어떻게 피하는거야? – scorpiozj