在平時(shí)的開發(fā)中,不管是公司要求還是個(gè)人的習(xí)慣,一般都有代碼風(fēng)格的要求。相同的代碼風(fēng)格,每次新建文件都要重新寫一遍,顯得非常的不符合一個(gè)程序員的風(fēng)格。這里通過定制自己的Xcode類模板和工程模板來解決這一問題。
定制自己的專屬模板,除了自己寫還可以修改蘋果官方的,系統(tǒng)模板在/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/下,包含了File Templates(文件模板)和Project Templates(工程模板)兩個(gè)文件夾,里面包含了新建文件和新建工程的所有選項(xiàng)。除此之外,蘋果還給用戶自定義的模板專門設(shè)置了目錄:~/Library/Developer/Xcode/,此目錄下默認(rèn)沒有Templates文件夾,如果要自定義模板,需要新建Templates文件夾,拷貝系統(tǒng)模板目錄下的文件進(jìn)來就可以了,在這里定義模板的好處就是升級(jí)Xcode的時(shí)候自定義模板不會(huì)被刪除,如果在系統(tǒng)模板文件夾自定義模板,Xcode一旦升級(jí)以后,模板就會(huì)被還原為系統(tǒng)原有的模板。所以建議在這里創(chuàng)建自己的模板。
定制類文件模板
首先在~/Library/Developer/Xcode/目錄下新建Templates(必須是這個(gè)名字)文件夾,拷貝系統(tǒng)模板目錄/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/Xcode/Templates/File Templates下的Source文件夾進(jìn)來,重啟Xcode會(huì)發(fā)現(xiàn),新建文件的時(shí)候Source選項(xiàng)下重復(fù)了幾項(xiàng),那就是我們新建的模板。

接下來就是在拷貝的系統(tǒng)模板上修改,這里以定制控制器模板為例。刪除Source文件夾下的Metal File.xctemplate、UI Test Case Class.xctemplate、Unit Test Case Class.xctemplate文件夾,保留Cocoa Touch Class.xctemplate文件夾,修改文件夾名字為Custom viewController Class.xctemplate。隨后在Custom viewController Class.xctemplate文件夾中找到UIViewControllerObjective-C文件夾,打開里面的___FILEBASENAME___.m文件,修改內(nèi)容為自己的控制器模板。

重啟Xcode新建控制器,選擇自己新建的模板,出來的就是自己想要樣式的控制器。但是自定義模板的圖標(biāo)和系統(tǒng)的是一樣的,想要修改稱自己想要的,把TemplateIcon.png和TemplateIcon@2x.png替換成自己的圖片就可以了。其他類模板的定制同樣的道理。