1

我在 iphone 中开发了一个应用程序,现在我还需要在 ipad 上创建同样的应用程序,我有以下文件

LoginViewController.h
LoginViewController.m
LoginViewController.xib

now i added new file for ipad:

LoginViewController~ipad.xib

现在我收到一个错误:

由于未捕获的异常“NSInternalInconsistencyException”而终止应用程序,原因:“-[UIViewController _loadViewFromNibNamed:bundle:] 加载了“LoginViewController”笔尖,但未设置视图出口。

4

1 回答 1

3

有一些步骤要走:-

  • 像你说的那样为 Ipad 创建新的 XibLoginViewController~ipad.xib并打开它。

  • 单击文件所有者->,如下所示:-

在此处输入图像描述

现在您的 ipad xib 也与您的 Loginviewcontroller customeClass 一起使用

  • 现在你只需要检查它 IsIphone 或 Ipad 像:-

#import "Homeviewcontroller.h"

#import "LoginViewController.h"

#define isIpad (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad)//这里定义上面的实现方法

@implementation Homeviewcontroller

现在,如果您想在装箱后加载 newNib,如上图所示,您可以像下面这样加载:-

if(isIpad)
{
   LoginViewController *ObjLoginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController~ipad" bundle:nil];
}
else
{
   LoginViewController *ObjLoginViewController = [[LoginViewController alloc] initWithNibName:@"LoginViewController" bundle:nil];
}

编辑

将您的 FileOwner 连接到主视图,例如:-

在此处输入图像描述

于 2013-05-29T07:55:38.410 回答