我的iPhone应用程序的根控制器内置代码,我现在正在使应用程序通用,并希望链接iPad Xib。问题是iPhone屏幕仍然加载而不是ipad xib
我的家庭控制器名为IChomeContoller
。h和m
到目前为止:
添加了iPad xib IChomeContoller~ipad.xib
将其设置为IB
IChomeContoller
将new referencing outlet
连接到IB
我也在appdeleage表单this示例中的代码中尝试过但仍然没有发生
我所有的其他屏幕都是用xib构建的,并且发现ipad xib没有问题
答案 0 :(得分:1)
在Xcode中单击您的项目选择您的目标(应该是最底层的)。在那里,如果它是一个通用应用程序,你应该看到iPhone和iPad的主屏幕Xib的下拉框。为iPad选择一个不同的,这应该可以解决问题。
修改的
好的,试试看:
在主视图控制器中,由appdelegate初始化的控制器,在init方法中:
- (id)init {
if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) {
self = [super initWithNibName:@"<Your iPad xib file here>" bundle:nil];
}
else {
self = [super initWithNibName:@"<Your iPhone xib file here>" bundle:nil];
}
if (self) {
// Everything else you got in your init function
}
return self;
}
答案 1 :(得分:1)
排序
- (id)init
{
[[NSBundle mainBundle] loadNibNamed:@"ICHomeController" owner:self options:nil];
在根视图控制器中添加
答案 2 :(得分:0)
您确定IChomeContoller~ipad.xib
已添加到目标中吗?在Xcode中,在Project Navigator(左侧)中选择文件,在File Inspector的Target Membership部分确认它(在右侧)。