2010-09-28 2 views
0

Я пытался опробовать кварц 2d сегодня, и мне нужно изучить основной рисунок и другие вещи, но теперь, как-то все, что я делаю, не рисует вещь на экране iphone! я попытался создать новый проект и начать с нуля, но все равно не повезло ... сначала я создал новое приложение на основе представления, а затем создал новый файл (.h и .m) в качестве подкласса UIView. В реализации я просто переопределяю метод drawRect, и ничего не происходит! Heres код:quartz 2d iphone not drawing

- (void)drawRect:(CGRect)rect { 

CGContextRef context = UIGraphicsGetCurrentContext(); 

CGFloat red[4] = {1.0f, 0.0f, 0.0f, 1.0f}; 

CGContextSetStrokeColor(context, red); 
CGContextBeginPath(context); 
CGRect rectangle = CGRectMake(0, 0, 400, 200); 
CGContextAddRect(context, rectangle); 
CGContextSetFillColor(context, red); 
CGContextFillPath(context); 
} 

У меня есть еще один проект, который я начал раньше, и имеют тот же код, и что прекрасно работает ... так что я думаю, что я изменил некоторые настройки или что-то .. может кто-нибудь помочь?

EDIT: нет ничего я не забыл, я уверен в этом, так как я делал то, что я сделал в моем последнем проекте, но каким-то образом, он не рисовать в этом ...

+0

Ваш код чертежа выглядит нормально (возможно, вам нужно также установить цветовое пространство, но оно все равно работает), поэтому я искал бы проблемы где-то еще. Например, убедитесь, что вы правильно настроили свой тип представления, если вы создали его с помощью IB. Или убедитесь, что это видно ... – Vladimir

+0

Как вы добавляете свой вид в окно? – pgb

+0

Поместите точку останова в метод drawRect. Я подозреваю, что ваш код не запускается вообще – vodkhang

ответ

0

Я обычно забывают для установки класса пользовательского вида в Interface Builder (Класс всплывающее окно вверху Идентификатор страница Инспектор). Это объясняет, почему drawRect: не вызывается.

+0

Что вы подразумеваете под пользовательским представлением? вы имеете в виду диспетчер представлений, который создает xcode, или вы имеете в виду подкласс UIView, который я создал? – retsrif

+0

_custom view_, я имею в виду подкласс _UIView_, который вы создали. – Codo

+0

спасибо !! это сработало! хотя я не знаю, почему мне никогда не нужно было это делать раньше ... – retsrif