gpt4 book ai didi

iphone - XIB 无法加载...只显示黑屏

转载 作者:行者123 更新时间:2023-12-03 20:28:03 26 4
gpt4 key购买 nike

我正在 iOS 4.2 及更高版本中创建一个通用应用程序。

我有一个名为 DataInputViewController_iPhone.xib 的 Nib 。在出现的第一个 View Controller 上,我有一个按钮,应该启动 DataInputViewController 类。它可以执行此操作,但不显示 XIB 文件的内容。它只显示黑屏。

有什么想法为什么会发生这种情况吗?

我有这段代码调用新的 View Controller :

-(IBAction)clickedButton:(id)sender {
if((UIButton *)sender == (UIButton *)startButton){
NSString *nibName;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
nibName = @"DataInputViewController_iPhone";
} else {
nibName = @"DataInputViewController_iPad";
}

DataInputViewController *nextVC = [[DataInputViewController alloc] initWithNibName:nibName bundle:nil];
[self.navigationController pushViewController:nextVC animated:YES];
}
else if((UIButton *)sender == (UIButton *)otherButton){
NSLog(@"clicked the other button");
}
}

此方法和新 View Controller 的 init 方法中的 NSLogging 告诉我 nibNameOrNil 变量已正确拉取。

这就是 DataInputViewController.m 中(标准)init 方法的样子:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
if (self) {
// Custom initialization
}
return self;
}

有什么想法为什么会发生这种情况吗?或者如何解决?

谢谢:)

最佳答案

您不必手动设置 Nib 名称。只需将它们命名为 DataInputViewController~iphone.xibDataInputViewController~ipad.xib,然后调用 [[DataInputViewController alloc] init]

参见iOS Supports Device-Specific Resources了解更多信息。

关于iphone - XIB 无法加载...只显示黑屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10316590/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com