ohyeahhhh 2019-12-09
一.代码块在哪里?
看下图
或者
快捷键:command+shift+L
长这样:
二.如何创建代码块:
1.先选中要创建的代码片段,然后点击右键,选中 Create Code Snippet
然后会自动弹出如下界面
如果上面这张图不小心点没了或者没出来,可以看第一步的操作,然后鼠标停留在选中的区域停留2秒以上就会出现左边的??界面
1.Title:标题
2.Summary:备注
3.Completion Shortcut:快捷方式,用来提示代码,注意提示的代码左侧是{}
4.Platform:平台(iOS)、Language:语言(Objective-C)
5.Completion Scopes:作用域 有以下几个选项:
例如 设置Completion Shortcut为color 那么直接敲color,就会出来
三.如何删除代码块:
选中要删除的代码块,按键盘上的delete键,弹出提示框,选择Delete
四.如何修改代码块:
如果想让某个关键字为变量名,只需要在这个变量名用<# #>包起来即可,例如<#name#>
@property (nonatomic, assign) <#Class#> <#object#>;
五:代码块的路径
Xcode中的代码块默认路径是:
~/Library/Developer/Xcode/UserData/CodeSnippets
可以将路径中的代码块,迁移到不同的电脑上使用,需重新启动Xcode ;
常用代码块
方法集注释 #pragma mark —————<#注释#>————— 普通注释 /** <#注释#> */ ———————————————————————————————————— /** <#注释#> * <#注释#> */ ———————————————————————————————————— /** <#注释#> @param <#注释#> <#注释#> @param <#注释#> <#注释#> @return <#注释#> <#注释#> */
@property属性声明 //strong-pstrong @property(nonatomic,strong)<#type#> *<#name#>; //copy-pcopy @property(nonatomic,copy)<#type#> *<#name#>; //assign-passign @property(nonatomic,assign)<#type#> <#name#>; //readonly-preadonly @property(nonatomic,assign,readonly)<#type#> <#name#>; //delegate-pdelegate @property(nonatomic,weak)id <<#delegatename#>> delegate; //block-pblock @property(nonatomic,copy)void (^<#name#>)(<#type#> <#name#>); //weak-pweak @property(nonatomic,weak)<#type#> *<#name#>;
单例 static <#SingleObject#> *_singleInstance = nil; +(instancetype)sharedInstance{ static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ if (_singleInstance == nil) { _singleInstance = [[self alloc]init]; } }); return _singleInstance; } +(instancetype)allocWithZone:(struct _NSZone *)zone{ static dispatch_once_t onceToken; dispatch_once(&onceToken, ^{ _singleInstance = [super allocWithZone:zone]; }); return _singleInstance; } -(id)copyWithZone:(NSZone *)zone{ return _singleInstance; } -(id)mutableCopyWithZone:(NSZone *)zone { return _singleInstance; }
懒加载 - (<#NSMutableArray *#>)<#name#> { if (!<#name#>) { <#name#> = <#[NSMutableArray array]#>; } return <#name#>; }
1 #pragma mark - <#内容#>