CS193P - Задание 3 - вызывать drawRect только в первом наборе setNeedsDisplay - PullRequest
1 голос
/ 05 марта 2010

Я беру курсы по разработке iPhone CS193P, и даже если .. Я знаю, что я довольно поздно сравнивая со студентами Стэнфорда, я делаю Задание 3.

Моя текущая проблема: мой метод drawRect вызывается не на каждом setNeedsDisplay ... но только на первом.

Кроме того, я заметил, что мой многоугольник имеет значение NULL (из PolygonView).

Вот источники моего проекта:

PolygonShape.h http://pastie.org/855503

PolygonShape.m http://pastie.org/855507

controller.h http://pastie.org/855508

Controller.m http://pastie.org/855509

PolygonView.h http://pastie.org/855511

PolygonView.m http://pastie.org/855513

Если бы кто-то мог мне помочь .. Я думаю, это довольно просто, но я не могу кажется, нашел это!

Большое спасибо! :)

1 Ответ

1 голос
/ 05 марта 2010

drawRect: необязательно вызывается на каждый setNeedsDisplay.

Вызов setNeedsDisplay только очистит кэш слоя представления. drawRect: будет вызываться только при обновлении экрана. Поэтому до возобновления работы runloop вызов setNeedsDisplay несколько раз может не дать никаких результатов.

...