我們經(jīng)常會(huì)定義一些retain的property僚饭,而且大概每次我們都會(huì)像這樣寫(xiě):
@property(nonatomic, retain)Type*name;
每次都要老老實(shí)實(shí)的把“@property (nonatomic, retain)”敲一遍勤婚,這樣太累了氧秘。
那么能不能像XCode自帶的代碼提示功能一樣茧痒,每次我們只需敲兩三個(gè)鍵,代碼提示就出來(lái)了雇初,然后一下子就可以把我們這段代碼輸入進(jìn)去戏罢?這樣不是方便了許多嗎?
Yes, we can. But how?
別急辅斟,下面我就以這段代碼為例转晰,展示如何在XCode中添加自定義的代碼片段。
用XCode隨便打開(kāi)或新建一個(gè)項(xiàng)目士飒,然后隨便打開(kāi)一個(gè).h或者.m文件查邢。
隨便找個(gè)空白位置,輸入“@property (nonatomic, retain) <#type#> *<#name#>;”酵幕。(不含雙引號(hào)扰藕,“<#”、“#>”這兩個(gè)符號(hào)的作用芳撒,你一會(huì)兒就明白了邓深。)
打開(kāi)XCode右側(cè)的Utilities View他嫡,然后在其靠底部的位置找到并打開(kāi)Code Snippets Library。
選中我們剛剛輸入的那段代碼庐完,把它拖到Code Snippets Library中钢属。
滾動(dòng)到Code Snippets Library的最底部,找到一個(gè)花括號(hào)上面帶個(gè)“User”文字的圖標(biāo)门躯。
單擊那個(gè)圖標(biāo)淆党,會(huì)彈出一個(gè)窗口。然后點(diǎn)擊窗口底部左邊的Edit按鈕
在Title和Completion shortcut這兩項(xiàng)中讶凉,輸入代碼片段的標(biāo)題和快捷鍵染乌。快捷鍵用于激活代碼提示懂讯,標(biāo)題則會(huì)顯示在代碼提示中荷憋。此例中,我們輸入標(biāo)題為“Objective-C @property retain”褐望,快捷鍵為“@property ”勒庄。
選擇對(duì)應(yīng)的platform、language和Completion scope瘫里。然后點(diǎn)擊“Done”按鈕实蔽。
此例中,platform我們選All谨读;language選Objective-C局装;Completion scope選Class Interface Methods。
Completion scope指定了激活代碼提示的快捷鍵的有效的區(qū)域劳殖,比如這里我們選的Class Interface Methods就是說(shuō)明這段代碼的快捷鍵在聲明類方法的區(qū)域才能激活代碼提示铐尚;在其他任何區(qū)域,無(wú)論怎么敲這個(gè)快捷鍵哆姻,都不會(huì)出現(xiàn)這段代碼的提示宣增。
好,現(xiàn)在刪掉我們剛剛輸入的代碼填具。然后隨便找類的頭文件统舀,在定義類property的區(qū)域,試試敲入我們剛剛設(shè)置的快捷鍵劳景。你注意到了嗎誉简?我們僅僅才敲入“@p”這兩個(gè)字符,代碼提示就已經(jīng)出來(lái)了盟广。選中代碼闷串,回車,XCode自動(dòng)把代碼給我們補(bǔ)全了筋量,是不是快多了烹吵?
ps.
現(xiàn)在你知道“<#”碉熄、“#>”這兩個(gè)符號(hào)的作用了吧?
為什么例子中肋拔,我們的快捷鍵“@property ”后面要加一個(gè)空格锈津?試試不加空格有什么效果?