Splashscreen显示旋转只在景观应用程序

时间:2014-06-25 18:51:38

标签: ios ipad splash-screen landscape

我有一个仅以横向模式运行的iPad应用程序。

我正在创建一个视图以尽快充当启动画面,因为在加载第一个屏幕之前需要一些数据库摆弄。我在appDelegate中使用的代码是:

self.window = [[UIWindow alloc] init];
UIImageView * splashView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,1024,768)];
splashView.image = [UIImage imageNamed:@"LaunchImage-700-Landscape@2x~ipad"];
[self.window addSubview:splashView];
self.window.hidden = NO;

我的问题是图像显示为旋转90度。左侧256像素为黑色,其余部分显示图像被剪裁。 如果我将帧更改为768 x 1024,整个屏幕将用于图像,但它会旋转并拉伸以适合。我在视图上尝试了旋转变换,但随后视图在水平和垂直方向上都会偏移。

2 个答案:

答案 0 :(得分:0)

感谢YarGnawh我现在在rootViewController中而不是直接在窗口下创建splashview,如下所示:

self.window = [[UIWindow alloc] init];
UIImageView * splashView = [[UIImageView alloc] initWithFrame:CGRectMake(0,0,1024,768)];
splashView.image = [UIImage imageNamed:@"LaunchImage-700-Landscape@2x~ipad"];
UIViewController * splashController = [[UIViewController alloc] init];
splashController.view = splashView;
self.window.rootViewController = splashController;

这就像魅力一样!

答案 1 :(得分:0)

您可以将已旋转的照片保存为横向模式,并将该照片添加到视图中。或者您可以旋转它并相应地更改原点。您必须从y原点中减去图片的高度。 (0,-768,1024,768)。或类似的东西。