我希望能够将我的ipad上的启动画面旋转到右侧和左侧。 我在.plist文件中启用了横向左右方向。我为LandscapeRight和LandscapeLeft添加了4个文件:
Default-LandscapeRight@2x~ipad.png
Default-LandscapeLeft@2x~ipad.png
Default-LandscapeRight~ipad.png
Default-LandscapeLeft~ipad.png
虽然这不重要,但在我的rootviewcontroller中我得到了:
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation {
return (interfaceOrientation == UIInterfaceOrientationLandscapeRight || interfaceOrientation == UIInterfaceOrientationLandscapeLeft);
return ( UIInterfaceOrientationIsLandscape( interfaceOrientation ) );
}
启动画面加载,但不会旋转。 我做错了什么?
答案 0 :(得分:0)
据我所知,设备无法识别Splash Image持续时间的方向。这些SPlash图像Default-LandscapeRight@2x~ipad.png Default-LandscapeLeft@2x~ipad.png Default-LandscapeRight~ipad.png识别应用程序何时启动设备,然后设备采用适当的启动图像。 默认-LandscapeLeft〜ipad.png。
如果您感兴趣,可以使用备用解决方案。这仅仅是我的概念
1为此目的创建UIIMageView并将其作为SUbview添加到Window。
2将iamge设置为该UIIMageView。
3设置睡眠方法3-4秒。喜欢睡觉(4)。
4调用RootViewController管理图像的方向。
像下面的方法一样 这是方法,假设您有Defind In AppDelegate类将管理图像方向。 -(void)checkOrientationforSplash:(UIInterfaceOrientation)interfaceOrentaion
{
if (splashImageView.hidden==FALSE) {
if(UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad){
if (interfaceOrentaion==UIInterfaceOrientationPortrait|| interfaceOrentaion==UIInterfaceOrientationPortraitUpsideDown) {
UIImage *image=[UIImage imageNamed:@"Default-Portrait.png"];
splashImageView.frame=CGRectMake(0.0, 0.0, image.size.width, image.size.height);
[splashImageView setImage:image];
}
else {
UIImage *image=[UIImage imageNamed:@"Default-Landscape.png"];
splashImageView.frame=CGRectMake(0.0, 20.0, image.size.width, image.size.height);
[splashImageView setImage:image];
}
}
}
5您可以在应用程序安装中间管理该图像表单,RoortViewController。
6在特定点删除该启动图像。
-(void)removeSplash
{
[splashImageView setHidden:YES];
}
我希望它会对你有所帮助。