3

为通用应用程序 xibs 自定义 xcode,这样当我创建一个新的 ViewController (如 VideoVC)时,它必须为此创建两个 nib 文件,

  • 视频VC_iPhone

  • VideoVC_iPad

有人可以帮我吗。没有指导方针。只是步骤。谢谢

4

4 回答 4

3

您将在“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode”中看到模板文件夹,在这里您将看到可以编辑或制作新的文件和项目模板,如果您想要。

针对您的问题,导航到此文件夹“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates”

在这里,您可以通过在带有 nib 的视图控制器的模板中为 iPad 添加一个空白笔尖来实现您想要做的事情。我已经上传了一个我做的样本,它仍在进行中,但它会根据您的需要创建 2 个笔尖。

[my custom template]
http://www.saplogix.net/Xcode_Custom_Template/TwoNibTemplate.zip
extract and copy that inside this folder "~/Library/Developer/Xcode/Templates/File Templates"

Note: create the directory if it's not already there.

待办事项:添加代码以根据设备加载特定的笔尖,这也只需添加即可。此外,它仅适用于 UIViewController 作为超类。

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPhone)
    {
        self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];
    }
    else
        if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad)
        {
            NSString *_nibBundleOrNil = (NSString *)(nibBundleOrNil != nil ? [nibNameOrNil stringByAppendingString:@"_iPad"] : [NSStringFromClass([self class]) stringByAppendingString:@"_iPad"]);
            self = [super initWithNibName:_nibBundleOrNil bundle:nibBundleOrNil];
        }
    
    if (self)
    {
        // Custom initialization
    }
    return self;
}

我的模板将生成以下条目,您可以使用它来创建带有 2 个笔尖的控制器。 我的模板将生成以下条目,您可以使用它来创建带有 2 个笔尖的控制器。

于 2013-02-13T16:59:44.203 回答
2

您可以创建自定义视图控制器模板来执行此操作。创建新文件模板比创建新项目模板更容易,因此完全可以做到。

不久前我做了一个演示 -幻灯片可能很有用。

于 2013-02-08T11:38:51.377 回答
2

使用以下命名约定创建视图控制器,创建 iphone/ipad xib 作为"viewcontrollername~iPhone.xib"@"viewcontrollername~iPad.xib"

和下面的链接状态相同,提供了在 viewcontroller.h 和 viewcontroller.m 中区分 ipad 和 iphone 的方法

http://iphonedevelopment.blogspot.de/2010/04/converting-iphone-apps-to-universal.html

于 2013-02-13T09:30:53.920 回答
-3

在创建新的 Xcode 项目时,选择 Single View Application,在选项页面的 Devices 下拉列表中,选择 Universal。这将创建 iPhone 和 iPad 笔尖。

从开始到结束:

文件 -> 新项目

选择单视图应用程序 -> 下一步

设备 -> 通用

于 2013-02-05T18:15:47.333 回答