我的iPad风景闪屏跳转到肖像

时间:2013-03-23 21:42:53

标签: ios ipad orientation unity3d

我正在使用Unity3D和Xcode开发通用应用程序。 iPhone版本非常完美,其定位是纵向。在人像模式下,启动画面很好。

现在,除了启动画面之外,iPad版本中的所有内容都能正常运行。 iPad版本仅处于横向模式,因此会创建启动画面,但是......在iPad上运行时,启动画面会在风景中开始正常,但在某些时候,它会跳转到纵向模式?我无法弄清楚为什么,并找到解决这个问题的方法。

有没有人遇到同样的问题或知道在哪里看?

希望得到帮助并提前感谢。

3 个答案:

答案 0 :(得分:1)

Unity在加载第一个场景时第二次显示启动画面(在此之前,它是iOS显示启动图像)。查看XCode项目中的SplashScreen.mm,您将看到专门用于此的类。一旦设置了视图控制器和视图,就会从iPhone_View类调用ShowSplashScreen()方法。

在更新Unity版本(我认为是4.x更新之一)后,我遇到了类似的问题。我在我的XCode文件中进行了自定义(一些包括更改视图和覆盖splashscreen的东西)。因此,在构建Unity项目时,我总是只是“附加”到XCode。要解决这个问题,我必须删除现有的XCode项目,允许Unity从头开始创建一个新项目,然后手动移植我的自定义项。

答案 1 :(得分:0)

用它在主窗口上显示启动... 这会将图像旋转为横向模式

  splash = [[UIImageView alloc] initWithFrame:CGRectMake(0,0, self.window.frame.size.height+255, self.window.frame.size.width)];
  splash.transform = CGAffineTransformMakeRotation(270* M_PI / 180.0);


  splash.image = [UIImage imageNamed:@"final"];
  [[UIApplication sharedApplication] setStatusBarOrientation:UIInterfaceOrientationLandscapeLeft animated:NO];
  [self.window addSubview:splash];
  [self.window makeKeyAndVisible];

答案 2 :(得分:0)

对于遇到此问题的任何人,我通过在Info.plist中添加以下行来解决此问题:

<key>UISupportedInterfaceOrientations~ipad</key>
<array>
    <string>UIInterfaceOrientationLandscapeRight</string>
    <string>UIInterfaceOrientationLandscapeLeft</string>
</array>