iOS: стандартные правила, которым нужно следовать при реализации drawRect: с перетаскиваемыми объектами - PullRequest
1 голос
/ 23 июля 2011

Мое приложение позволяет пользователю перетаскивать круги по экрану. Мне интересно, есть ли какие-либо стандартные шаги, чтобы предпринять, чтобы реализовать это, особенно в отношении маркировки правильных областей представления как загрязненных В настоящее время я делаю следующее:

//Get initial touch point and draw a circle there. Use touch point and size of circle to pass the mark the appropriate CGRect as dirty so that it gets redrawn
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event

//Get new touchpoint and draw a circle there. Use the union of the previous CGRect and the new one (based on the touch point and circle size) to tell drawRect: what area of the screen to redraw.
- (void) touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event {

Это кажется правильным, или есть какая-то другая фундаментальная вещь, которую я должен сделать?

1 Ответ

1 голос
/ 24 июля 2011

Предполагая, что ваш взгляд - это то, что рисует круги, тогда то, что вы делаете, должно быть хорошоПросто используйте [self setNeedsDisplayInRect: circleRect], чтобы пометить предыдущую и новую позиции круга как грязные.

...