Как мне переместить круг, нарисованный в подклассе UIView, переписав метод «drawRect»? - PullRequest
0 голосов
/ 07 мая 2010

Я пытаюсь понять, что я делаю неправильно, но я просто не понимаю. Вот что я хочу сделать:

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

- (void)drawRect:(CGRect)rect {

//Create the main view!

 CGContextRef mainscreen = UIGraphicsGetCurrentContext();

 //Draw the dot
 //will be a circle cause rectangle is a square
 CGRect dotRect = CGRectMake(50, 80, 100, 100);
 [[UIColor blueColor] set];
 CGContextStrokeEllipseInRect(mainscreen, dotRect);
 CGContextFillEllipseInRect(mainscreen, dotRect);

}

Похоже, что все отлично, но теперь я понятия не имею, как заставить его перемещаться по экрану. Я пробовал несколько вещей, но ничего не получалось.

1 Ответ

1 голос
/ 07 мая 2010

Чтобы нарисовать точку в другом месте, измените начало координат dotRect. Чтобы выяснить, где его нарисовать, используйте -touchesBegan:withEvent: и -touchesMoved:withEvent: и запишите место, где происходят прикосновения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...