2010-10-14 2 views
0

У меня есть метод drawrect в моем основном UIView, который рисует 8 спрайтов в каждой игре tic. Я хочу разделить каждый из этих спрайтов на отдельный UIView.Как интегрировать чертеж Quartz 2d в подвале UIView?

Я пытаюсь разделить один спрайт сначала как тест.

До сих пор я добавил UIView в качестве подзаголовка к своему основному виду и задал его рамку. Это нарисовает черный ящик на представлении. Мой вопрос: как мне теперь получить рисунок спрайта в методе drawrect для рисования в этом UIView?

Спасибо всем,

Martin

ответ

0

Каждый вид нужно будет его собственный DrawRect, и где-то вам нужно будет позвонить setNeedsDisplay на каждом (суб) смотреть видно. Нарисуйте спрайт в drawRect для представления, где вы хотите, чтобы он появился. Вы можете либо иметь множество подклассов uiviews, каждый со своим собственным drawRect, либо оператор case switch внутри drawRect, который выбирает, что рисовать на основе своего рода свойства типа subview.

Возможно, вы также захотите, чтобы цвет фона вашего спрайта был прозрачным, чтобы они были невидимы, пока вы не нарисуете их.

+0

Спасибо - но я не могу заставить его подойти для отображения - все, что я получаю, это черный ящик. Нужно ли мне устанавливать что-либо отдельно от рамки subviews? – GuybrushThreepwood

+0

@Ohnomycoco: Можете ли вы изменить цвет фона подвью? Является ли drawRect подзапроса фактически вызываемым (установить точку останова)? – hotpaw2

+0

Выбирается drawrect (проверяется через bpoint). Это мой код для добавления subview: CGRect fr = CGRectMake (55.0f, 0.0f, 50.0f, 50.0f); \t \t self.view2.backgroundColor = [UIColor whiteColor]; \t \t self.view2 = [[SecondView alloc] initWithFrame: fr]; \t \t [self.view addSubview: view2]; \t \t [view2 release]; – GuybrushThreepwood