美文网首页
自定义快捷代码片段

自定义快捷代码片段

作者: Leafly | 来源:发表于2017-11-02 17:25 被阅读14次

Xcode为我们提供了一种可以快速输入一段代码的快捷方式,这里对如何通过自定义快捷代码片段来提升开发效率进行一个总结

如何创建自定义代码片段

在Xcode的右下角有一个代码片段区域,如图所示:

QQ20171102-163351.png
这里面已经有了很多代码片段,这些代码片段是Xcode为我们提前准备的。
我们先来看一看里面的结构,点开第一个代码片段C Block typedef - Define a block as a type,这个代码片段是我们通常用来给一个block声明一个别名的
QQ20171102-163706.png

如图所示的代码片段有很多很多,感兴趣的可以自己去看一看,接下来就是本文的重点,如何创建属于我们的代码片段呢?

  • 在编辑区写上你要添加的片段代码
  • 将代码选中拖拽到Code Snippets区域


    QQ20171102-165121.png
  • 在弹框里对代码片段进行编辑,将想要方便更换的内容以<# #>包裹,对应的内容就是可变内容啦
    QQ20171102-170317.png
  • Completion Shortcut一栏中可以填入快捷标记
  • 完成以上步骤后,我们在需要使用相关代码片段时只需要输入快捷标记就能选中啦


    QQ20171102-170644.png

常用代码片段

腾讯QMUI Team开源了一个他们经常使用的代码片段,非常好用,大家可以直接去下载,存放在~/Library/Developer/Xcode/UserData/CodeSnippets目录下

qmui-ios-codesnippets

快捷键汇总

NSObject

  • pa - 定义一个 assign 的 property
  • pc - 定义一个 copy 的 property
  • ps - 定义一个 strong 的property
  • psr - 定义一个 strong, readonly 的property
  • pw - 定义一个 weak 的property
  • propertySwizzleAssign - 用 swizzle 的方式定义一个 assign 的property
  • propertySwizzleCopy - 用 swizzle 的方式定义一个 copy 的property
  • propertySwizzleStrong - 用 swizzle 的方式定义一个 strong 的property
  • propertySwizzleWeak - 用 swizzle 的方式定义一个 weak 的property
  • sharedInstance - 为当前类创建一个实现单例功能的 sharedInstance 方法
  • replaceMethod - 重写当前类的 load 方法并在其中用 swizzle 替换方法实现
  • replaceMethod_QMUI - QMUI 重写当前类的 load 方法并用 ReplaceMethod() 函数替换方法的实现

Block

  • blockArguments - 声明一个用于方法参数的 block
  • blockproperty - 声明一个用于 property 的 block
  • blocktypedef - 用 typedef 定义一个 block
  • blockvar - 定义一个作为局部变量的 block

Method & Function

  • fnv - 定义一个返回值为 void 的方法
  • fnv: - 定义一个返回值为 void 且带参数的方法
  • fnblock - 定义一个返回值类型为 block 的方法
  • fnv_handleEvent - 定义一个用于 UIControl 事件回调的方法
  • fnv_longPress - 定义一个用于 UILongPressGestureRecognizer 的回调方法(你就不用每次都去拼写那个很长的手势名字了)
  • fnv_pan - 定义一个用于 UIPanGestureRecognizer 的回调方法
  • fnv_tap - 定义一个用于 UITapGestureRecognizer 的回调方法

UIView

  • setFrame - 为 UIView 设置 frame
  • setFrame_QMUI - QMUI 使用像素对齐的 CGRectFlatMake()UIView 设置 frame
  • setFrameX - QMUI 使用 CGRectSetX() 修改 UIViewframe.origin.x
  • setFrameY - QMUI 使用 CGRectSetY() 修改 UIViewframe.origin.y
  • setFrameXY - QMUI 使用 CGRectSetXY() 修改 UIViewframe.origin
  • sizeThatFits - 为当前 view 创建 sizeThatFits: 方法
  • layoutSubviews - 展开 layoutSubviews 方法
  • updateConstraints - 展开 updateConstraints 方法
  • getWidth - 展开 CGRectGetWidth()
  • getHeight - 展开 CGRectGetHeight()
  • getMinX - 展开 CGRectGetMinX()
  • getMinY - 展开 CGRectGetMinY()
  • addtarget - 调用 UIControl addTarget:action:forEvents: 方法
  • setImageForButton - 为 UIButton 设置图片
  • setTitleColorForButton - 为 UIButton 设置文字颜色
  • setTitleForButton - 为 UIButton 设置文字

UITableView

  • initWithStyle - 展开 initWithStyle: 方法
  • initWithStyleForCell - 展开 UITableViewCell initWithStyle:reuseIdentifier: 方法
  • tableViewDelegate - 展开常用的几个 UITableViewDelegate 方法
  • numberOfSectionsInTableView - 展开 numberOfSectionsInTableView:方法
  • numberOfRowsInSection - 展开 tableView:numberOfRowsInSection: 方法
  • cellForRowAtIndexPath - 展开 tableView:cellForRowAtIndexPath: 方法
  • heightForRowAtIndexPath - 展开 tableView:heightForRowAtIndexPath: 方法
  • didSelectRowAtIndexPath - 展开 tableView:didSelectRowAtIndexPath: 方法

UICollectionView

  • collectionViewDelegate - 展开常用的几个UICollectionViewDelegate 方法
  • numberOfSectionsInCollectionView - 展开 numberOfSectionsInCollectionView:
  • numberOfItemsInSection - 展开 collectionView:numberOfItemsInSection:
  • cellForItemAtIndexPath - 展开 collectionView:cellForItemAtIndexPath:
  • sizeForItemAtIndexPath - 展开 collectionView:layout:sizeForItemAtIndexPath: 方法
  • didSelectItemAtIndexPath - 展开 collectionView:didSelectItemAtIndexPath: 方法
  • didDeselectItemAtIndexPath - 展开 collectionView:didDeselectItemAtIndexPath: 方法

UIViewController

  • loadView - 展开 loadView 方法
  • viewDidLoad - 展开 viewDidLoad 方法
  • viewWillAppear - 展开 viewWillAppear: 方法
  • viewDidAppear - 展开 viewDidAppear: 方法
  • viewWillDisappear - 展开 viewWillDisappear: 方法
  • viewDidDisappear - 展开 viewDidDisappear: 方法
  • viewDidLayoutSubviews - 展开 viewDidLayoutSubviews: 方法
  • updateViewConstraints - 展开 updateViewConstraints: 方法
  • addChildViewController - 在当前 UIViewController 里添加 childViewController
  • removeFromParentViewController - 将 childViewController 从当前的 UIViewController 里移除
  • initSubviews - QMUI 展开 initSubviews 方法
  • setNavigationItems - QMUI 重写 QMUICommonViewController 里的 setNavigationItemsIsInEditMode:animated: 方法
  • setToolbarItems - QMUI 重写 QMUICommonViewController 里的 setToolbarItemsIsInEditMode:animated: 方法
  • leftBarButtonItemImage - QMUI 用 QMUINavigationButton 的方法创建一个用于 navigationItem.leftBarButtonItemUIBarButtonItem
  • rightBarButtonItemImage - QMUI 用 QMUINavigationButton 的方法创建一个用于 navigationItem.rightBarButtonItemUIBarButtonItem

Other

  • pragma - 展开一个用于 Xcode 导航的 #pragma mark -
  • externRefInH - 在 *.h 文件里声明一个 extern const 的指针
  • externRefInM - 在 *.m 文件里为一个 extern const 的指针赋值
  • externValueInH - 在 *.h 文件里声明一个 extern const 的值变量
  • externValueInM - 在 *.m 文件里为一个 extern const 的变量赋值
  • static reference - 定义一个 static 的指针
  • static - 定义一个 static 的值变量
  • __weakSelf - 定义一个 weakself 指针
  • __strongSelf - 将 weakSelf 指针改为 strongself 指针
  • logCallStackSymbols - 用 NSLog 打出当前的方法调用栈信息
  • timeConsuming - 展开一段用 CACurrentMediaTime() 来计算方法耗时的代码

相关文章

  • 1.3 自定义代码段

    本小节知识点: 如何自定义代码片段 如何导入代码片段 1.如何自定义代码片段 将代码拖拽到code区域 配置快捷键...

  • PHPStorm快捷键1

    常用代码片段 CTRL + j能够快捷的输入常用的代码片段,类似vim的 snipMate,可以自定义代码片段 类...

  • PHPStrom 中有哪些实用的功能和快捷键

    CTRL + j能够快捷的输入常用的代码片段,类似vim的snipMate,可以加入自定义代码片段 find ev...

  • CodeSnippets自定义代码片段及转移\导出

    如何自定义代码片段 将代码拖拽到code区域配置快捷键等信息 如何导入导出代码片段 将下载好的代码片段拷贝到:/U...

  • visual studio | vs 配置

    自定义快捷键 (形成个人偏好,提高效率) vs常用快捷键 代码片段:snippast

  • 自定义快捷代码片段

    Xcode为我们提供了一种可以快速输入一段代码的快捷方式,这里对如何通过自定义快捷代码片段来提升开发效率进行一个总...

  • 自定义代码块

    1.如何自定义代码片段 将代码拖拽到code区域Snip20150529_23.png 配置快捷键等信息Snip2...

  • iOS 自定义代码块&Swift中自定义log

    自定义代码片段(code snippets) Xcode的代码片段(Code Snippets)创建自定义的代码片...

  • Xcode:添加自定义代码片段

    在Xcode的库面板——代码片段库 中,可以添加自定义的使用率比较高代码块 添加方法: 通过快捷键(control...

  • Xcode代码块

    代码片段 Xcode的代码片段(Code Snippets)创建自定义的代码片段,当你重用这些代码片段时,会给你带...

网友评论

      本文标题:自定义快捷代码片段

      本文链接:https://www.haomeiwen.com/subject/aahapxtx.html