试图修改项目模板,但文件夹似乎丢失了文件

时间:2012-09-16 15:54:48

标签: xcode templates

我正在尝试将自定义代码模板添加到Xcode中。根据我的阅读,这是我提出的程序。

首先,访问文件夹路径

  

Application / Xcode45-DP3.app / Contents / Developer / Platforms / iPhoneOS.platform / Developer / Library / Xcode / Templates / Project Templates / Application

其次,制作一个现有文件夹的副本作为起点。

第三,将该文件夹名称更改为我想要的名称。

我遇到问题的部分是没有包含我想要修改的代码的文件,例如 PROJECTNAME .xcodeproj,anyfilename.h,anyfilename.h等。 ,只有MainStoryBoard_iPad(和iPhone).storyboard,ViewcontrolleriPad(和iPhone).Xib,TemplateIcon.tiff和TemplateInfo.plist。

这样做的正确方法是什么?我错过了什么?

enter image description here

enter image description here

1 个答案:

答案 0 :(得分:4)

你想创造什么?项目模板或文件模板?

  • 如果要创建新的文件模板,则需要将整个"*.xctemplate"文件夹从"/Xcode/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates"(您将用作示例/起点)复制到"~/Library/Application Support/Developer/Shared/Xcode/File Templates"
  • 如果您要创建新的项目模板,请使用"*.xctemplate""/Xcode/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/Project Templates"
  • 中的一个"~/Library/Application Support/Developer/Shared/Xcode/Project Templates"文件夹执行相同操作
  • 如果应用支持中没有"File Templates" / "Project Templates"文件夹,请创建它们。

不要将模板复制到Xcode包本身,因为它不打算(并且违反了沙箱概念,并且在下次升级Xcode版本时会被覆盖)但是使用Application Support文件夹,因为它是它的目的。

将一个.xctemplate文件夹从Xcode包复制到相应的App Support文件夹后,您可以修改.xctemplate的内容以满足您的需求。


现在因为您在xctemplate文件夹中没有任何xcodeproj ,这是因为项目模板创建的项目未使用xcodeproj定义文件,而是使用TemplateInfo.plist 文件中的键。

例如,在"Project Templates/Mac/Mac Base.xctemplate/TemplateInfo.plist"中,您可以看到一个名为"Project"的密钥,其子项"Configurations""SDK""SharedSettings"定义了一些构建设置xcodeproj由模板创建。

此外,请注意模板具有某种"继承"概念,每个模板都能够拥有"祖先"定义公共密钥:

  • 打开"TemplateInfo.plist"文件,然后查看"ancestors"密钥
  • 您将在此处找到所选模板的祖先的标识符数组。例如,"Cocoa Application.xctemplate"模板将"com.apple.dt.unit.cocoaApplicationBase"作为其祖先之一。
  • 然后去找到其标识符是祖先密钥中找到的模板的模板(在我的示例中,它是"Cocoa Application Base.xctemplate"模板,就像在其TemplateInfo.plist中一样,您可以看到它的{{1} } key是我们在上面看到的"Identifier"

你可以这样做,直到基本模板,具有某种"继承"用于模板定义。