2013-03-11 103 views
-6

我的应用程序在iphone 4中工作正常,但在iphone 5中显示底部屏幕为空。而且我认为这是因为iphone 5有更大的屏幕,所以它的解决方案是什么,如何管理这个额外的空间。请为上述指导。iphone 5显示底部空的空间

在此先感谢。

+2

http://stackoverflow.com/questions/12395200/how-to-develop-or-migrate-apps-for-iphone-5-screen-resolution – nsgulliver 2013-03-11 11:40:49

回答

0

试试这个对于任何控制器,

enter image description here

因此,它会根据高度自动调整窗口大小。

对于视网膜(iPhone-5)显示器,您必须在xcode项目中导入“[email protected]”文件。

希望它能帮助你理解。
谢谢。

0

添加与用于iPhone 5下的设备相同的初始屏幕图像,但图像大小为960 * 1136,名称为[email protected],即,如果Default.png当前是启动屏幕。 这将为您的应用程序提供iPhone 5屏幕支持。

+0

他不是在谈论闪屏! – 2013-03-11 11:45:12

2

如果您使用的是iOS 6或更高版本,那么您可以为iphone 5创建一个单独的xib,称为Retina 4全屏。您需要在您的ViewController尺寸中查看。也要检查这两个xib的。这意味着在iphone 5或更低版本中运行任何一个xib都可以使用这些条件,无论是在AppDelegate还是在需要显示另一个ViewController的地方。

CGSize result = [[UIScreen mainScreen] bounds].size; 
if(result.height == 480) 
{ 
} 
else if(result.height == 568) 
{ 
} 

上面的代码会检查你的iphone屏幕的大小,并相应地调整。 希望这已经清除你的问题:)。

PS: - 不要忘了添加你的iphone 5的闪屏,例如[email protected]

3

使用此代码,它会帮助你,在这里我们要创建两个xib文件使用此代码类似(viewcontroller.xib和viewcontroller_5.xib),当你在iphone4通话iphone4屏幕别人使用的应用程序调用iphone5屏幕。

谢谢。

if([[UIScreen mainScreen] bounds].size.height == 568){ 
self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController_5" bundle:nil] autorelease]; 

    NSLog(@"iphone5"); 
}else 
{ 
    self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease]; 
    NSLog(@"iphone4"); 
} 
1

根据我这些问题处理,并避免对夫妇的用于检查设备的高度要求的条件,则使用用于视图或相对帧向其添加到查看任何UI元素的最佳方式例如:如果您要在视图的底部添加一些UI元素,或者在视图的底部添加一些UI元素,则应该根据视图的高度或相对于标签栏(如果存在)采用y原点。对于这种情况下,您将图像作为完整视图的背景,则可以将图像设置为视图的背景颜色。

self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@“IMAGE TO BE ADDED”]];