-3
嗨,我有我的应用程序内置IOS版本5.1,但现在我想支持它IOS6因为我所有的视图在iPhone模拟器的视网膜4英寸已上移。你能帮助解决这个问题的最简单方法吗?因为我在屏幕上有很多视图提供支持ios6
嗨,我有我的应用程序内置IOS版本5.1,但现在我想支持它IOS6因为我所有的视图在iPhone模拟器的视网膜4英寸已上移。你能帮助解决这个问题的最简单方法吗?因为我在屏幕上有很多视图提供支持ios6
好的,你应该做的是创建另一个XIB,并将其附加上“_iPhone5”。就像这样:
ViewController1_iPhone5
在这种XIB设置文件所有者的视图控制器,然后重新布局所有的UI元素根据自己的喜好,设置网点。现在,无论何时出现此视图控制器,您都需要检查设备是否为iPhone 5,并相应地调整笔尖名称:
在前缀文件中定义此项(将文件导入到您的每一个创建的文件,所以如果你导入一个类,所有的文件都会导入)。您可以在您的视图控制器定义它,如果你不想在你的前缀文件(应该在你的支持文件中找到):
#define IS_IPHONE_5 (fabs ((double)[[UIScreen mainScreen] bounds].size.height - (double)568) < DBL_EPSILON)
然后你可以使用这个:
if (IS_IPHONE_5 && [[UIDevice currentDevice] userInterfaceIdiom] != UIUserInterfaceIdiomPad) {
UIViewController *vc1 = [[MenuMileIndexViewController alloc] initWithNibName: @"ViewController_iPhone5" bundle: nil];
// present the view controller
}
如果你不使用XIB,并以编程方式编码您的看法,使用此:
if (IS_IPHONE_5 && [[UIDevice currentDevice] userInterfaceIdiom] != UIUserInterfaceIdiomPad) {
// Reposition and resize your subviews
}
注:请确保您添加iPhone 5的默认图像
我没有使用XIB有没有其他的替代 – IOSCODER
你是什么意思你不使用笔尖 – MCKapur
我手动创建硬编码值的视图有没有我的项目中的笔尖文件 – IOSCODER