李洪强iOS开发之让您的Xcode键字如飞
手指在键盘上飞速跳跃,终端上的代码也随着飞舞,是的这确实很酷。优秀的程序员总是这么一群人,他们不拘于现状,不固步自封,他们喜欢新奇的事,他们把自己发挥到极致。
指法攻略
放下您钟爱的鼠标吧,在前行之中它终会成为你的负累!
简记:
command 用来导航,控制导航区域
alt 控制右边的一些东西,比如Assistant Editor,utility editor
Control 编辑区域上的Jump bar的一些交互
Command 1~ 8: 跳转到导航区的不同位置
Command 0 :显示/隐藏导航区
Command Alt 1~ 6:在不同检测器之间跳转
Control Command Alt 1~4: 在不同库之间跳转
Control 1~ 6: 在Jump bar的不同标签页的跳转。
Command Alt 0: 显示/关闭工具区.
Command + Enter: 显示标准单窗口编辑器
Command Alt Enter:打开Assistant editor
Command Alt Shift Enter: 打开版本控制编辑器
Command + Shift + Y:显示/隐藏调试区
Command + Shift + J,可展示当前你在工程导航器中打开的文件
Cmd + . 方便地暂停运行iOS模拟器
查找
使用 Command + Shift + Option + F 来打开 Find navigator 的替换模式,如果你嫌麻烦,也可以使用 Command + Shift + F 来打开 Find navigator 的查找模式,如果你还嫌麻烦,使用 command + 3 来打开 Find navigator,然后开启查找或者替换模式,选择一种最适合自己的方式就好。
快速打开
Command + Shift + O可以直接跳转到某个方法定义或者指定的代码文件。喜欢使用键盘但不喜欢使用鼠标的人会大爱这个快捷方式。键入第一个字母即可快速切换至某个文件或者找到特定的代码行。比如键入vDL,最先展示的结果是带有viewDidLoad()名的函数。
帮助
Command + Shift + 0 (Zero)打开文档和参考,键入代码中的某个关键字,文档提供了一些额外的资源和示例工程。当然也可以在变量、类或者方法名上执行Option+双击名称操作,从而更方便地跳转至文档。
在类或者方法名上执行Option + Left点击操作使用内联帮助可帮开发者快速学习类或代码片段的用法。如果点击了弹出视图底部的参考链接,那么就可以方便地跳转到Xcode提供的文档中。
个人比较中意Option+双击名称操作,毕竟来的直接。
代码片段
Xcode的代码片段(Code Snippets)创建自定义的代码片段,当你重用这些代码片段时,会给你带来很大的方便。
常用代码块
1.copy:
@property (nonatomic,copy) NSString *<#string#>;
2.strong:
@property (nonatomic,strong) <#Class#> *<#object#>;
3.weak:
@property (nonatomic,weak) <#Class#> *<#object#>;
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.gmark:
#pragma mark - <#gmark#>
9.warning:
#warning <#message#>
10.ReUseCell:
static NSString *rid=<#rid#>;
<#Class#> *cell=[tableView dequeueReusableCellWithIdentifier:rid];
if(cell==nil){
cell=[[<#Class#> alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:rid];
}
return cell;
11.initObj:
if(self=[super init]){
<#init#>
}
return self;
12.dataFill:
-(void)dataFill:(<#ModelClass#> *)<#model#>{
<#code#>
}
13.MainGCD:
dispatch_async(dispatch_get_main_queue(), ^{
<#code#>
});
14.GlobalGCD:
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
<#code#>
});
15.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#>
});
16.OnceGCD:
static dispatch_once_t onceToken;
dispatch_once(&onceToken, ^{
<#code to be executed once#>
});
黑技能(给代码排序)
使用Spotlight来搜索Automator,并打开它;然后点击File->New,并选择服务(service)一项;在Actions筛选栏,输入shell,然后双击运行shell脚本;在新添加的服务的菜单栏上,检查Output replaces selected text;将脚本内容切换至sort | uniq;同时按下command + s,将服务保存为 Sort & Uniq。
李洪强iOS开发之让您的Xcode键字如飞的更多相关文章
- 李洪强iOS开发之添加手势
李洪强iOS开发之添加手势 02 - 添加手势
- 李洪强iOS开发之- 实现简单的弹窗
李洪强iOS开发之- 实现简单的弹窗 实现的效果: 112222222222223333333333333333
- 李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView
李洪强iOS开发之后使用XIB实现横向滚动的UIScrollView 11111222
- 李洪强iOS开发之苹果使用预览截图
李洪强iOS开发之苹果使用预览截图 01 在预览的图片中选中你要截得区域 02 - command + C 03 - Command + N 04 - Command + S (保存)
- 李洪强iOS开发之通知的使用
李洪强iOS开发之通知的使用 01 - 在A中发送通知 02 - 在B中监听通知 03 - 在B中通知出发的方法 04 - 在B控制器viewDidLoad调用通知
- 李洪强iOS开发之后使用纯代码实现横向滚动的UIScrollView
李洪强iOS开发之后使用纯代码实现横向滚动的UIScrollView (VTmagic是一个实现左右滚动的控制器的框架,也可以实现此功能) 实现的效果: 01 - 创建四个控制器 02 - 定义需要 ...
- 李洪强iOS开发之 - 实现九宫格并使用SDWebImage下载图片
李洪强iOS开发之 - 实现九宫格并使用SDWebImage下载图片 源码: // // ViewController.m // 08-九宫格扩展 // // Created by 李洪强 ...
- 李洪强iOS开发之 - WebViewJavascriptBridge
李洪强iOS开发之 - WebViewJavascriptBridge 01 - JS端: 02 - iOS端 01 遵守代理协议 02 申明属性 03 开启日志 04 给哪个webview建立J ...
- 李洪强iOS开发本人集成环信的经验总结_09_处理好友请求
李洪强iOS开发本人集成环信的经验总结_09_处理好友请求 实现这种效果: 01 - 遵守处理好友请求的代理协议 02 - 设置代理 03 - 实现代理方法 04 - 实现代理中用到的方法
随机推荐
- Silverlight动画学习笔记(三):缓动函数
(一)定义: 缓动函数:可以将自定义算术公式应用于动画 (二)为什么要用缓动函数: 您可能希望某一对象逼真地弹回或其行为像弹簧一样.您可以使用关键帧动画甚至 From/To/By 动画来大致模拟这些效 ...
- Android L Ripple的使用
声明:Demo并不是有本人所写,本人只是总结在这里 工程源码: RippleDemo.zip ---------------------------------------------------- ...
- How to using x++ creating Vendors [AX2012]
.//Create party for the vendor public void createParty(VendorRequestCreate _vendorRequestCreate) { ; ...
- oracle创建用户,修改用户,删除用户等关于用户的
--直接修改底层表 USER$ 更换用户名 1.windows 平台下运行 cmd 2.sqlplus /nolog 3.SQL> conn SYSTEM/123@ORCL as sysdba ...
- protected internal修饰符
见过这样的修饰符,但是没有仔细考虑过,今天做一个小练习. 先给出一个链接,别人在网上讨论的:http://wenku.baidu.com/view/4023f65abe23482fb4da4cfe.h ...
- nginx+keepalived双主高可用负载均衡
实验环境及软件版本:CentOS版本: 6.6(2.6.32.-504.el6.x86_64)nginx版本: nginx-1.6.3keepalived版本:keepalived-1.2.7 主LB ...
- WPF之旅(三)- 布局之StackPanel
说到WPF的界面布局,相信很多朋友都写过Html代码.在WPF中,大多数程序都使用类似Web的(flow)流布局.在使用流布局模型时,各种控件可以按特定的要求来排列,在窗口内容发生变化时,比如窗口大小 ...
- MvvmLight for Xamarin.Forms
一.Xamarin.Forms 不使用框架时的绑定 需要注意的是BindingContent,不是DataContent <ContentPage xmlns="http://xama ...
- CentOS服务器Http压力测试之ab
ab的全称是Apache Bench,是Apache自带的网络压力测试工具,相比于LR.JMeter,是我所知道的 Http 压力测试工具中最简单.最通用的. ab命令对发出负载的计算机要求很低,不会 ...
- hadoop相关问题
发现一篇不错的文章,转一下.http://www.cnblogs.com/xuekyo/p/3386610.html HDFS导论(转) 1.流式数据访问 HDFS的构建思想是这样的:一次写入,多 ...