Xcode —— 程式碼塊Code Snippets
在iOS開發過程中,經常會用到一些相似的程式碼。我們能不能將這些程式碼儲存起來,重複使用呢?回答是可以的。我們來看一下Xcode程式碼片段——Code Snippets。
Xcode的程式碼片段(Code Snippets)建立自定義的程式碼片段,當你重用這些程式碼片段時,會給你帶來很大的方便。
例:建立一個常見的程式碼塊
@property (nonatomic, strong) <#type#> *<#value#>;
其中<##> 作用是佔位,## 之間可以輸入提示文字。
常用的:
1.strong:@property (nonatomic,strong) <#Class#> *<#object#>;
2.weak:@property (nonatomic,weak) <#Class#> *<#object#>;
3.copy:@property (nonatomic,copy) NSString *<#string#>;
4.assign:@property (nonatomic,assign) <#Class#> <#property#>;
5.delegate:@property (nonatomic,weak) id<<#protocol#>> <#delegate#>;
6.block:
@property (nonatomic,copy) <#Block#> <#block#>;
7.mark:
#pragma mark <#mark#>
8.ReUseCell:
static NSString *rid=<#rid#>; <#Class#> *cell=[tableView dequeueReusableCellWithIdentifier:rid]; if(cell==nil){ cell=[[<#Class#> alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:rid]; } return cell;
9.MainGCD:
dispatch_async(dispatch_get_main_queue(), ^{
<#code#>
});
10.AfterGCD:
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(<#delayInSeconds#> * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
<#code to be executed after a specified delay#>
});
11.OnceGCD:
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
<#code to be executed once#>
});
自定義程式碼片段:
以Strong為例:
1.在書寫@property屬性的地方寫下如下語句:@property (nonatomic,strong) <#Class#> *<#object#>;
2.選中上述語句,用滑鼠左鍵拖到 下圖中指示的程式碼片段在Xcode中的區域裡,就新建了一個程式碼片段
螢幕快照 2016-09-28 上午11.01.52.png
3.鬆開滑鼠左鍵的同時,會彈出程式碼片段編輯視窗,如下圖所示:
螢幕快照 2016-09-28 上午10.56.47.png
圖中從上到下的含義依次是:
①Title
程式碼片段的標題
②Summary
程式碼片段的描述文字
③Platform
可以使用程式碼片段的平臺,有IOS/OS X/All三個選項
④Language
可以在哪些語言中使用該程式碼片段
⑤Completion Shortcut
程式碼片段的快捷方式,例:copy
⑥Completion Scopes
可以在哪些檔案中使用當前程式碼片段,比如全部位置,標頭檔案中等,當然可以新增多個支援的位置。
最後的一個大得空白區域是對程式碼片段的效果預覽。
一切設定完成以後,點選該選單右下角的Done按鈕,新建工作就結束了。
程式碼片段備份:
Xcode中的程式碼片段預設放在下面的目錄中:
~/Library/Developer/Xcode/UserData/CodeSnippets