Xcode自定義文件模板

摘要:

一個團隊合作開發(fā)一個項目的時候,可能因為各自的代碼風格不同,使得項目的整體風格不那么統(tǒng)一。使用自定義模板就能有效的減少這種問題的發(fā)生。同時還有其他好處。總結如下:
1、節(jié)省重復代碼手寫的時間
2、統(tǒng)一規(guī)范代碼,提高代碼的可讀性
3、減少手寫代碼,XIB或修改相關配置等不必要的時間

如UIViewController的代碼按照如下結構編寫:

#pragma mark - def
#pragma mark - override
#pragma mark - api
#pragma mark - model event 
#pragma mark - view event
#pragma mark - private
#pragma mark - getter / setter

又如單元測試都是按照如下結構創(chuàng)建的


測試代碼模板

系統(tǒng)文件模板

系統(tǒng)文件

如上圖所示:我們創(chuàng)建文件的時候都會用到系統(tǒng)模板,包括iOS watchOS tvOS macOS四種終端,四種終端都有自己的文件模板提供選擇,之前開發(fā)的時候只管用系統(tǒng)提供的文件模板,并不知道我們也可以創(chuàng)建自己或公司專用的模板,那么接下來就讓我們?nèi)チ私庀拢趺磩?chuàng)建屬于自己的模板。。。

模板存放的位置

Xcode模板主要分為兩種,系統(tǒng)默認模板和用戶自定義模板,位置分別在

  • iOS開發(fā)系統(tǒng)模板位置
    /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates

里面包含文件模板(File Templates)和工程模板(Project Templates)

  • MacOSX的系統(tǒng)文件模板位置
    /Applications/Xcode.app/Contents/Developer/Library/Xcode/Templates
  • 用戶自定義模板位置
  • ~/Library/Developer/Xcode/Templates

如何快速創(chuàng)建、修改xcode模板

Xcode沒有提供直接的工具或者是向導給你創(chuàng)建一個工程模板,但是我們可以根據(jù)修改系統(tǒng)模板來創(chuàng)建自己的模板。

打開iOS模板目錄

終端方式:
open /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates

或者
// 進入iOS模板目錄
cd /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates 
// 打開該目錄
open . 
  • 基于現(xiàn)成模板修改或使用
    文件路徑

如圖所示:

___FILEBASENAME___ : 文件名包括后綴,里面的內(nèi)容就是模板

TemplateIcon.png :文件的圖標

TemplateInfo.plist : 模板的描述
其內(nèi)容如下圖:

  • kind : 模板類型

    Xcode.Xcode3.ProjectTemplateUnitKind --指定該模板是工程(項目)模板
    Xcode.IDEFoundation.TextSubstitutionFileTemplateKind --指定該模板是文件模板

  • SortOrder: 這個是排序的值,該模板顯示在new project的dialog中的位置索引,可以設置在界面中的擺放位置,值越小越前面

  • Ancestors:要繼承的模板。也就是模板的“父類”,從父類那里繼承一些模板的基礎屬性,可以有多個父類。 當然這里并沒繼承,所以沒有該字段

  • Concrete:設置為YES的模板才可以顯示在new project的dialog中,此時這個模板不能被其他模板繼承。

  • Description:就是Description描述信息。

  • AllowedTypes:文件類型,包含Swift(public.swift-source),OC(public.objective-c-source 、 public.objective-c-plus-plus-source)

  • MainTemplateFile:指定模板文件

MainTemplateFile文件內(nèi)容

我要創(chuàng)建一個Swift文件模板的話,我可以將Swift File.xctemplate文件夾拷出來。重新命名,然后替換里面的圖片,替換里面的模板代碼。然后將修改后的文件夾添加到用戶自定義模板目錄~/Library/Developer/Xcode/Templates/、當然這里你也可以添加在它的子目錄下面,我這里就添加在了MyTemplate子目錄下。

完成后如下圖所示:


創(chuàng)建好的模板文件

打開xcode創(chuàng)建文件,就能看到你剛剛創(chuàng)建的模板了
如圖:


選擇自定義的文件模板

然后你就能像使用系統(tǒng)模板一樣使用,自定義的模板了

最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。