【问题标题】:iOS black screen on ipad, not iphoneipad上的iOS黑屏,而不是iphone
【发布时间】:2012-03-15 14:45:35
【问题描述】:

我遇到了一个问题,我被困了几个小时。

我有一部 iPhone 已成功进入 App Store。现在我希望它也支持 iPad。

为了实现这一点,我为 iPad 创建了新的 XIB 文件,将它们命名为:

iPhone:RootViewController_iPhone.xib

iPad:RootViewController_iPad.xib

然后我正确设置文件的所有者。

我是这样称呼他们的:

MyViewController *vC;
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone) {
    vC = [[[MyViewController alloc] initWithNibName:@"MyViewController_iPhone" bundle:[NSBundle mainBundle]] autorelease];
} else {
    vC = [[[MyViewController alloc] initWithNibName:@"MyViewController_iPad" bundle:[NSBundle mainBundle]] autorelease];
}

然后,在每个视图控制器中,我会根据当前设备系列进行一些自定义布局修复。

这对我所有的观点都很好,除了其中两个。 无论我尝试了什么,屏幕都保持黑色。 我检查了thisthisthis,只列出了几个问题。显然我无法解决这个问题。

任何想法为什么这只发生在(幸运的是)我的两个观点?

提前致谢。

编辑: 下面是一些初始化代码:

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{

    if (self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]) {
        NSLog(@"frame: %@", NSStringFromCGRect(self.view.frame));    //frame: {{0, 0}, {768, 1004}}
        self.view.backgroundColor = [UIColor groupTableViewBackgroundColor];     //no result here
    }
    return self;
}

- (void)viewDidAppear:(BOOL)animated{
    [super viewDidAppear:animated];
    UILabel *l1 = [[UILabel alloc] initWithFrame:CGRectMake(50, 50, 100, 30)];
    l1.backgroundColor = [UIColor clearColor];
    l1.text = @"Zurück";
    l1.textColor = [UIColor blackColor];
    l1.textAlignment = UITextAlignmentCenter;
    l1.font = [UIFont fontWithName:@"Helvetica" size:10];
    [self.view addSubview:l1];
    [l1 release];
}

【问题讨论】:

  • 我确实相信您的问题在于视图本身...您能否提供更多有关它们的信息..
  • 您检查过 nib 文件中的所有链接吗? mainView 是否正确连接到view 属性?是否设置了 fileOwner?您是否在 viewDidLoad 中进行任何额外的初始化?
  • 我发布了一些初始化代码。我一遍又一遍地比较了 nib 文件,我无法找到与其他 nix 的任何区别
  • 您是否已将 .xib 的视图属性与实际视图相关联?还要确保在 .xib 的属性中设置了 MyViewController 类。

标签: ios objective-c ipad window screen


【解决方案1】:

我建议这样做(不要让 bundle nil)

initWithNibName:@"RooViewController_iPad" bundle:[NSBundle mainBundle]] autorelease];

尽管如此,我不知道它是否会有所帮助......

【讨论】:

  • 谢谢,这很明显。不幸的是,这并没有改变任何东西
猜你喜欢
  • 1970-01-01
  • 2013-10-13
  • 1970-01-01
  • 2013-11-16
  • 1970-01-01
  • 2017-12-18
  • 2013-12-10
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多