2013-03-19 106 views

回答

75

我花了几个小时在网上搜索找到有关这一操作的信息。其实很难为Xcode4.5设置项目模板,但它很难在网络上找到将它放在一起的信息!希望以下步骤将帮助您创建自己的。

设置

  1. 让我们通过获得现有的Xcode项目模板的副本为基地,使用开始。打开查找器,转到应用程序并右键单击Xco​​de以显示包内容。导航到内容/开发商/平台/ iPhoneOS.platform /开发商/库/ Xcode中/模板/项目模板/应用/

[编辑] 在Xcode中5中的路径如下所示:〜/库/开发人员/ Xcode /模板/应用程序/项目模板。如果模板/应用程序/项目模板不存在,您也应该创建它。请在下面的评论中注意seufagner的更新,尽管我自己并没有尝试过。 [/编辑]

  • 复印(不要切/粘贴!)列出的一个模板。
  • 打开另一个Finder窗口,并导航到以下目录(取消隐藏你的库文件夹类型此cmd在终端:的chflags nohidden〜/图书馆/或选择按上查找/转到点击时,ALT/Option键)/库/开发人员/ Xcode/Templates(您可能需要创建此文件夹(如果尚不存在)/项目模板/
  • 在这里创建一个文件夹。可以随意调用它,建议是您的公司名称。该名称出现在Xcode新项目对话框的左侧菜单中。例如在我称之为我的Appscore的附加图像中,还有另一个用于cocoas2d的图像。 enter image description here
  • 在这里粘贴的项目模板,并更改其文件夹的名称,无论你想如MySuperProjectTemplate.xctemplate。我们还没有完成,因为我们需要更改模板的标识符。否则它不会出现在Xcode的新项目对话窗口中。
  • 在TextEdit中打开TemplateInfo.plist文件。搜索标识符键。您应该看到类似于“com.apple.dt.unit.XXXXXX”的字符串值。只要它的独特性取代它就可以。我再次建议添加您的公司名称和描述该模板的名称。
  • 如果您现在打开Xcode,您应该看到在新项目对话框中出现在公司名称下的项目模板。
  • 定制

    在有现成的项目模板,这是不是很实用的一个副本的时刻。我猜你有几个类可以在几乎所有的项目中重用?我们如何将它们纳入此模板?

    1. 复制你愿意,并将它们粘贴到您的新项目模板,即定位到/库/开发商/ Xcode中/模板/项目模板// MySuperProjectTemplate.xctemplate/
    2. 打开TemplateInfo.plist文件中的文件再次在TextEdit中。首先我们要做的是告诉项目模板包含新文件,以便搜索一个名为“节点”的键,该键具有一组值。添加两个以下行:

      <串> _VARIABLE_classPrefix:identifier_ .H < /串> <串> _VARIABLE_classPrefix:identifier_ .M < /串>

    例如,如果您的控制器被称为BaseViewController,线条如下所示:

    <串> ___ VARIABLE_classPrefix:标识符___ BaseViewController.h < /串> <串> ___ VARIABLE_classPrefix:标识符___ BaseViewController.m < /串>

    Step 2

  • 接着找到定义键,你应该看到一个字典作为它的价值。在这里,我们必须添加对包含文件的引用。创建一个新的键并调用它___ VARIABLE_classPrefix:identifier ___ BaseViewController.h(再次以BaseViewController为例)。
  • Step 3

  • 这个密钥的值再次是字典。它包含一个名为Path的键和一个字符串值,该值是文件的名称,例如BaseViewController.h
  • 我附上了以下图片以显示我的意思,因为我认为我的描述不够完整。您可能会注意到那里有一个名为“Group”的按键,这可以让您直接创建组和输入文件:D
  • 希望这实际上对某人有用:)任何问题我会尽我所能来回答。几周前我做了这个,所以我的记忆有点朦胧。

    +0

    我同意Foram。如何创建自己的自定义项目的说明非常好。 – 2013-04-24 13:30:03

    +0

    有没有办法添加静态库? – 2013-05-01 16:36:18

    +0

    @PhongLe我不这么认为,但我没有真正地看着它,所以希望我被证明是错误的:) – bennythemink 2013-05-01 23:33:43

    1

    @bennythemink 你的答案真的是非常充分的帮助,但我想添加一些更多的东西在你的答案。 当我们复制的Xcode预定义模板比这个键包含

    <key>Ancestors</key> 
    <array> 
    <string>com.apple.dt.unit.storyboardApplication</string> 
    </array> 
    

    此值。当我们在xcode的Custom模板中使用这个键值时,它会默认创建AppDelegate类。我们不能移动到文件夹,我们可以将它移到组中。 所以我建议要补充一点:在自定义模板

    <key>Ancestors</key> 
    <array> 
    <string>com.apple.dt.unit.objectiveCApplication</string> 
    <string>com.apple.dt.unit.iPhoneBase</string> 
    <string>com.apple.dt.unit.prefixable</string> 
    </array> 
    

    值,这样我们将有充分空的模板中,我们可以做任何自定义的东西。

    5

    您还可以从检查现有的项目模板,你可以在找到学到很多东西:

    /Xcode.app/Contents/Developer/Library/Xcode/Templates/Project Templates/ 
    

    的Mac

    /Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates/ 
    

    的iOS

    很少有示例模板也GitHub通过里德主要和另一个由Acani。还有AFNetworking模板,由Mattt汤普森创建。看到所有的例子,包括由Apple构建的例子,然后你就可以开始创建自己的例子了。

    +0

    感谢评论Legoless! Mattt Thompson所做的任何事情都很棒,所以我会检查他的模板! – bennythemink 2014-03-27 10:59:27