2010-02-03 3 views
3

Я разрабатываю игру-головоломку для iPhone, используя основную графику, реализующую drawrect в одном UIView.Простые меню в iPhone игра

Я хотел бы добавить меню, которое открывается из обработчика событий UIButton.

Я не уверен, что я должен сделать это с помощью кода, например. иметь флаг «меню» и настраивать подпрограммы рисования и использовать обработчики событий (ручная реализация) или идти по маршруту UINavigationController и иметь совершенно отдельный вид, который будет активирован, я предполагаю в UINavigationController из события кнопки.

В настоящее время моя музыка и звуковые материалы находятся в классе, прикрепленном к «главному» UIView в моей игре и инициализируются через ViewDidLoad.

Любые советы были бы весьма полезными.

ответ

2

Обязательно укажите код своего меню в другом объекте представления. Не просто перерисовать существующий вид в режиме меню. Это сделает ваш код излишне сложным.

Вам необязательно использовать UINavigationController для замены одного вида для другого. Вы сами пишете код, чтобы удалить игровой режим (removeFromSuperview), и добавьте в окно приложения окно меню (addSubview:), используя переходную анимацию, если хотите.

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

Трудно сказать точно то, что вам нужно сделать, не зная больше о вашем коде, но вы должны совершенно определенно держать различные вещи, как различные классы, вместо того, чтобы один класс, который действует как много вещей, в зависимости от флаг режима.

+1

@ Benzado благодарит за советы. Я чувствую, что многие игры OpenGLES, возможно, просто используют один вид, а все в игровых меню и т. Д. Обрабатываются в коде? У вас есть мнение о том, что у вас есть два UIViews и просто спрятаны один или другой со скрытым флагом? – PeanutPower

+1

OpenGL - это отличная возможность червей, о которой вам не нужно беспокоиться, если вы работаете в Core Graphics. Использование скрытия, вероятно, не отличается от добавления/удаления представлений, вы можете сделать это, если хотите. – benzado

+0

Спасибо Benzado – PeanutPower

Смежные вопросы