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

接下來(lái)就是在拷貝的系統(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文件夾,打開(kāi)里面的___FILEBASENAME___.m文件,修改內(nèi)容為自己的控制器模板。

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