【发布时间】:2012-08-14 23:27:11
【问题描述】:
我有一个应用程序,它最初是几年前设计的,专为最初的 iPhone 设计。我已经接受了它,我们正在寻求对其进行更新,以便它可以在 iPhone 4 和 iPad 上运行。里面有很多代码,所以发布示例很困难,因为它们可能不是来自正确的地方(而且它使用 irrlicht,大部分代码是 c++ 和一些 obj-c 类 - appDelegate 等)。
iPhone 版本运行良好,在 xcode 模拟器中 iPad 版本运行良好。但是,在设备本身上,iPad 版本无法正确呈现。
该应用程序在所有版本中都是横向的,但在 iPad 上,尽管它以正确的方式定向所有内容,但绘图区域似乎仍在使用纵向方向。 这是一个截图(忽略绿色方块,我只是隐藏了那里的一些信息):http://i.imgur.com/50CKA.png
您可以看到右侧是空白的,它似乎将宽度限制为 768,图像超出了屏幕顶部(我想它会在 1024 处切断)。鉴于 iPhone 版本运行良好,IB 中是否存在我可能忽略的可能需要更改的设置?
编辑1:
UIView *contentView = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]];
contentView.autoresizingMask = (UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight);
self.view = contentView;
self.view.autoresizesSubviews = YES;
【问题讨论】:
-
只要主视图是一个控制器,那么你就可以在这个东西上设置一个autoResizigMask。
-
我之前实际上没有使用过 autoresizingmask,我已经用我添加的代码编辑了这个问题 - 它看起来像一个正确的实现吗?
-
yes autoresizingMask 使用得当,这是否解决了您的问题?
-
没有。由于某种原因,它现在已经旋转了图像本身 - 并将其移动到屏幕的右侧。如果问题在于这个 autoresizingmask - iPhone 设备上会不会也是这样?正如我所说,它适用于那些。
标签: c++ objective-c ios interface-builder