我创建了一个应用程序,其中包含两个用于iPhone 4的Xib文件和一个用于iPhone5的文件。 iphone 5屏幕看起来不错,但在iphone 4中会有所不同。
这是iPhone 4的xib文件
这是模拟器屏幕。
我的xib文件大小为320 * 460。我对这种行为一无所知。可以任何一个PLZ帮助。
更新
我使用此代码展示我的VC
TransactionDetailViewController * transactionDetailViewController;
//select the zib according to the screen size
CGRect screenBounds = [[UIScreen mainScreen] bounds];
if (screenBounds.size.height == 568) {
transactionDetailViewController = [[TransactionDetailViewController alloc] initWithNibName:@"TransactionDetailViewController" bundle:nil];
} else {
transactionDetailViewController = [[TransactionDetailViewController alloc] initWithNibName:@"TransactionDetailViewController_iPhone4" bundle:nil];
}
// Pass the selected object to the new view controller.
self.navigationController.navigationBar.tintColor = [UIColor redColor];
[self.navigationController pushViewController:transactionDetailViewController animated:YES];
答案 0 :(得分:0)
您正在加载iPhone 5笔尖。根据设备设置isIpad全局标志,然后在视图控制器中使用此init方法
- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
NSString *nibName=nil;
nibName=isiPad?@"viewController_iPhone5":@"viewController";// isIpad is flag set if device is iPhone5
self = [super initWithNibName:nibName bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}
答案 1 :(得分:0)
iPhone 4屏幕未正确调整大小或缩放,因此部分内容位于标签栏后面。
标签栏的标准尺寸为49高,导航栏高44。您可以将视图的大小调整为320 x 367,因为这是460 - 49 - 44。
这不是最好的解决方案,但可能会起作用