一、快捷键的使用

经常用到的快捷键如下:

新建

shift + cmd + n     新建项目

cmd + n             新建文件

视图

option + cmd + 回车 打开助理编辑器

cmd + 回车           显示主窗口

cmd + 0             导航窗口

option + cmd + 0    工具窗口

在.m & .h之间切换           control + cmd + 上/下

按照浏览文件的前后顺序切换     control + cmd + 左右

查看头文件       control + cmd + j

切换到对应的函数control + 6 支持智能输入,注意输入法

运行

cmd + r             运行

cmd + .             停止

cmd + b             编译

cmd + shift + b 静态内存分析编译,可以检查程序结构上是否存在内存泄露

排版

control + i         将选中按钮重新缩进

cmd + ]             向右增加缩进

cmd + [             向左减少缩进

cmd + /             注释/取消注释,提示:取消注释时,注释双斜线必须在行首

cmd + 向上           到文件开始位置

cmd + 向下           到文件末尾位置

二、OC专有注释

注释形式和效果

(1)#pragma mark 注释

(2)#pragma mark- 注释

三、warning的使用(注意)

使用形式:

#warning 代码还没有写完

可以帮助我们对代码进行快速的定位

四、代码块的使用

对于经常使用的代码块,可以以代码块的方式保存起来,设置提示词,以便快速的编码。

对代码块进行适当的编辑

使用<#name#>和<#type#>让保存的代码块不被“写死”;

设置后的提示效果:

五、打印内容查看(重写description方法的技巧)

代码示例:   

- (NSString *)description
{
// 包含对象类型名称,以及对象的指针地址
return [NSString stringWithFormat:@"<%@: %p> {answer: %@, title: %@, icon: %@, options: %@}", [self class], self, self.answer, self.title, self.icon, self.options];
}

提示:

如果要在开发时,跟踪对象的明细信息,可以重写description方法,类似于java的toString()

为根类添加一个扩展

 1 #import "NSArray+Log.h"
2
3 @implementation NSArray (Log)
4
5 - (NSString *)descriptionWithLocale:(id)locale
6 {
7 // 遍历数组中的所有内容,将内容拼接成一个新的字符串返回
8 NSMutableString *strM = [NSMutableString string];
9
10 [strM appendString:@"(\n"];
11
12 // 遍历数组,self就是当前的数组
13 for (id obj in self) {
14 // 在拼接字符串时,会调用obj的description方法
15 [strM appendFormat:@"\t%@,\n", obj];
16 }
17 [strM appendString:@")"];
18 return strM;
19 }
20
21 @end

最新文章

  1. 【手记】注意BinaryWriter写string的小坑——会在string前加上长度前缀length-prefixed
  2. JavaScript中如何获取某年某月有多少天的问题
  3. stringBuffer拼接有规律字符串
  4. hadoop之根据Rowkey从HBase中查询数据
  5. EntityFramework中Mapper怎么定义联合主键?
  6. WinForm特效:拦截窗体上各个部位的点击
  7. 2013-07-29 IT 要闻速记快想
  8. 记录一次Jmeter性能测试
  9. java 钱币的单位转换
  10. jquery.validate详解二
  11. Json,Gson,FastJson解析笔记
  12. Handlebars 新手使用
  13. 【Teradata】并行操作工具
  14. SpringMVC中请求路径参数使用正则表达式
  15. JavaScript实现全屏显示
  16. @synthesize obj=_obj的意义详解 @property和@synthesize
  17. i2c 协议解析
  18. jsonp解决跨域问题
  19. 剑指offer 14 调整数组顺序使奇数位于偶数前面
  20. (七)MySQL数据操作DQL:单表查询1

热门文章

  1. win10 nodejs指定ionic版本安装(npm方式)
  2. 关于编译安装php
  3. 20145305 《网络对抗》注入Shellcode并执行&amp;Return-to-libc 攻击实验
  4. 关于cp命令的编写
  5. Android学习笔记之 ActionBar
  6. 嵌入式系统 Boot Loader 技术内幕【转】
  7. [BZOJ1196][HNOI2006]公路修建问题 二分答案+最小生成树
  8. CSS3屏幕密集媒体查询
  9. 解决 E: Unable to correct problems, you have held broken packages. 问题
  10. UVa 815 洪水!