3

我正在使用 Unity3D 和 Xcode 开发一个通用应用程序。iPhone 版本完美无缺,而且它的方向是纵向的。启动画面在纵向模式下很好。

现在,除了闪屏之外,我的 iPad 版本中的所有内容都运行良好。iPad版本仅在横向模式下,因此会创建启动画面,但是...在iPad上运行时,启动画面在横向开始时正常,但在某些时候,它会跳转到纵向模式?我不知道为什么并找到解决这个问题的地方。

有没有人遇到过同样的问题或知道去哪里找?

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

4

3 回答 3

1

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

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

于 2013-03-25T16:07:23.643 回答
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];
于 2014-11-14T13:06:34.103 回答
0

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

<key>UISupportedInterfaceOrientations~ipad</key>
<array>
    <string>UIInterfaceOrientationLandscapeRight</string>
    <string>UIInterfaceOrientationLandscapeLeft</string>
</array>
于 2019-12-04T09:56:44.330 回答