我正在以景观模式开发的iPhone应用程序正在严重挑战。我把它放在肖像中进行比较,在这个方向上似乎更顺利。我没有做我认为是过程密集的事情:地图视图,一些按钮,一些标签和一些石英绘图,但是一些基本的石英动画非常严重地减慢了。

有谁知道与肖像相比,景观模式是否非常残障,/或如果是这样,是否有更好的方法来创建景观应用程序?我只需使用一个旋转的视图转换了90度,然后将所有子视图附加到它上。

谢谢。

有帮助吗?

解决方案

在渲染性能方面,景观和肖像方向之间没有真正的区别。您是否使用转换将主视图旋转90度?我相信,截至iPhone OS 2.1,您不再需要手动将转换应用于您的主视图以使其从景观开始。我要做的要强制景观取向的要做的就是将此委托方法放在我的申请代表中:

- (void)application:(UIApplication *)application willChangeStatusBarOrientation:(UIInterfaceOrientation)newStatusBarOrientation duration:(NSTimeInterval)duration;
{
    // This prevents the view from autorotating to portrait in the simulator
    if ((newStatusBarOrientation == UIInterfaceOrientationPortrait) || (newStatusBarOrientation == UIInterfaceOrientationPortraitUpsideDown))
        [application setStatusBarOrientation:UIInterfaceOrientationLandscapeRight animated:NO];
}

以及我的根视图控制器中的以下内容:

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation 
{
    return ( (interfaceOrientation == UIInterfaceOrientationLandscapeLeft) || (interfaceOrientation == UIInterfaceOrientationLandscapeRight));
}

其他提示

也许您进行一些划分,导致非整数像素位置(例如0.76)。当我有非整数像素位置时,我的性能有一些问题。 (尽管我不完全确定它们是否连接。但是也许对您有帮助)

大家,感谢您的所有建议和帮助。我尝试了布拉德(Brad)设置视图控制器自动座设置的建议,并且效果非常好。我认为这是导致放缓的巨大因素。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top