У меня проблемы с приложением для рисования, которое я создаю.
На портрете точка касания в порядке, линия следует за правильной точкой касания, но когда я переключаю ориентацию на ландшафт, вот что произошло:
красная метка X - это точка касания, но линия начинается в другой точке.
как мне решить эту проблему ??
вот мой код:
на viewDidLoad:
touchView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"bgimg.png"]];
[touchView setFrame:CGRectMake(0, 0, 768, 1024)];
[self.view addSubview:touchView];
[self.view sendSubviewToBack:touchView];
touchMoved = 0;
touchView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
на ощупь Перемещено:
UIGraphicsBeginImageContext(self.view.frame.size);
[touchView.image drawInRect:CGRectMake(0, 0, 768, 1024)];
CGContextSetLineCap(UIGraphicsGetCurrentContext(), kCGLineCapRound);
CGContextSetLineWidth(UIGraphicsGetCurrentContext(), 25.0f);
CGContextSetRGBStrokeColor(UIGraphicsGetCurrentContext(), 0, 0, 0, 1);
CGContextMoveToPoint(UIGraphicsGetCurrentContext(), endingPoint.x, endingPoint.y);
CGContextAddLineToPoint(UIGraphicsGetCurrentContext(), currentTouch.x, currentTouch.y);
CGContextStrokePath(UIGraphicsGetCurrentContext());
touchView.image = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();