iPhone游戏中的简单菜单

3

我正在使用核心图形实现drawrect在单个UIView中为iPhone开发一个益智游戏。

我想添加一个菜单,该菜单是从UIButton事件处理程序中打开的。

我不确定是否应该通过代码来完成这个操作,例如有一个menuopen标志并调整绘图例程和点击事件处理程序(手动实现),还是选择UINavigationController路线,并拥有一个完全独立的视图,该视图将在按钮事件中激活,我假设在UINavigationController中。

目前,我的音乐和声音内容都在附加到我的游戏中“主”UIView的类中,并通过ViewDidLoad进行初始化。

任何建议都将不胜感激。

1个回答

2
你一定要将菜单代码放在不同的视图对象中。不要仅在菜单模式下重新绘制现有视图,这会使你的代码变得复杂而不必要。
但是,你不必使用UINavigationController来交换一个视图和另一个视图。你可以自己编写代码来从应用程序的窗口中删除游戏视图(removeFromSuperview)并添加菜单视图(addSubview:),如果需要的话,还可以使用过渡动画。
你也可以使用UIViewController的presentModalViewController:方法将菜单视图推到游戏视图的顶部。
不知道你的代码情况,很难说你需要做什么,但你一定要将不同的东西保留为不同的类,而不是让一个类根据模式标志充当多个角色。

1
@Benzado 感谢你的建议。我个人认为许多 OpenGLES 游戏可能只使用一个视图,所有游戏内的菜单等都在代码中处理?你对使用两个 UIView 并简单地通过隐藏标志隐藏其中一个有什么看法吗? - acheo
1
OpenGL是一个不同的问题,如果你正在使用核心图形,就不需要担心它。使用隐藏可能与添加/删除视图没有什么区别,如果您喜欢,可以这样做。 - benzado

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接