2

我是一个新的 iOS 编程人员,我正在开发一个只需要在横向运行的简单 iPhone 游戏。我有 ...

  1. 在目标设置中设置支持的方向
  2. 添加了请求。plist 项(初始界面方向)
  3. 覆盖 shouldAutorotateToInterfaceOrientation 以仅在横向模式下返回 YES

.. 应用程序“看起来”正确,但发生了一些奇怪的事情。

问题 1 - 我正在尝试手动定位我的视图,而不是依赖自动布局。我正在加载的 NIB 中有一个 UIView,它需要位于距屏幕右边缘 150 像素的位置。我必须让 UIViewController 的视图的高度(而不是宽度)正确定位它 - 就像它在代码中此时没有旋转到横向一样。

问题 2 - 实现 UINavigationController 从标题屏幕转到游戏交互。当我将交互 UIViewController 推送到堆栈时,它会像预期的那样从右侧滑入。当我通过弹出交互返回标题时,它会向上滑动到标题。好像要转回纵向了?

我认为我缺少一些非常基本的东西,但我在我的应用程序代码中找不到它。我已经浏览了一个横向应用程序的列表,但他们没有提到比上面的列表更多的内容。

还有其他我应该注意的东西/设置/方法可以覆盖吗?

4

2 回答 2

0

问题 2:

不要使用很多 UIViewController。使用一个视图控制器。创建一个主 UIViewController 并为其他 UIViewController 做:

[mainviewcontrl presentModalViewcontroller: child_viewcontrl animated: YES];

要删除子视图控制器,请使用

[child_viewcontrl dismissModalViewControllerAnimated: YES];
于 2012-06-07T04:29:06.670 回答
0

您还需要在其他视图控制器中设置 shouldAutorotateToInterfaceOrientation 。尤其是在你的 UINavigationController 中显示的那些。

于 2012-06-08T04:25:08.853 回答