Xcode的代碼片段(Code Snippets)創建自定義的代碼片段,當你重用這些代碼片段時,會給你帶來很大的方便。
常用的:
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) <#returnType#>(^<#blockName#>)(<#arguments#>);
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 <#class#> *singleClass = nil;
+ (instancetype)shareInstance{
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
<#code to be executed once#>
});
return <#expression#>
}
}
12.TableView
- (UITableView *)tableView {
if(!<#tableview#>) {
<#tableview#> = [[UITableView alloc]initWithFrame:self.view.bounds style:UITableViewStylePlain];
<#tableview#>.delegate =self;
<#tableview#>.dataSource =self;
}
return<#tableview#>;
}
#pragma mark - tableView delegate
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView {
return <#expression#>
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return <#expression#>
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *identify =@"cellIdentify";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:identify];
if(!cell) {
cell = [[UITableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:identify];
}
cell.textLabel.text =self.arrayTitle[indexPath.row];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
}
自定義代碼片段:Xcode10之前
以Strong為例:
1.在書寫@property屬性的地方寫下如下語句:
@property (nonatomic,strong) <#Class#> *<#object#>;
2.選中上述語句,用鼠標左鍵拖到 下圖中指示的代碼片段在Xcode中的區域里,就新建了一個代碼片段
3.松開鼠標左鍵的同時,會彈出代碼片段編輯窗口,如下圖所示:
圖中從上到下的含義依次是:
①Title
代碼片段的標題
②Summary
代碼片段的描述文字
③Platform
可以使用代碼片段的平臺,有IOS/OS X/All三個選項
④Language
可以在哪些語言中使用該代碼片段
⑤Completion Shortcut
代碼片段的快捷方式,例:copy
⑥Completion Scopes
可以在哪些文件中使用當前代碼片段,比如全部位置,頭文件中等,當然可以添加多個支持的位置。
最后的一個大得空白區域是對代碼片段的效果預覽。
一切設置完成以后,點擊該菜單右下角的Done按鈕,新建工作就結束了。
Xcode10添加代碼塊:
代碼片段備份:
Xcode中的代碼片段默認放在下面的目錄中:
~/Library/Developer/Xcode/UserData/CodeSnippets
我們可以將目錄中的代碼片段備份,也可以將其直接拷出來放在不同的電腦上使用。
歡迎關注我的博客,我會不定時更新