声明一个类需要两个文件, 接口(.h)和实现(.m).
接口(interface)更像是”声明”, 协议(protocol)才是起到”接口”的作用.
类方法用加号(+), 实例方法用减号(-).
1 | + alloc; |
引用类型带星号(*).
1 | (NSString *) name |
方法名包括参数名.
1 | // 方法名: setWidth:andHeight: 参数: width, height |
super是关键字; self是变量名, 可以被覆盖.
“类采纳了某协议”, 翻译过来就是:”类实现了某接口”. “协议采纳另个协议”, 翻译过来就是:”接口继承”.
1 | // Formatter采纳了Formatting和Prettifying两个协议 |
属性声明的格式.
1 | @property(这里是一些特性, 例如readonly/retain/copy) 类型 名称; |
如何在XCode中使用Interface Builder设计器里的对象.
在设计器里选中对象, 切换到Connections标签, 从Referencing Outlets里扯一条线连接到Controller上, 然后选择实例变量名.
数据源委托到控制器.
对于需要集合数据类型作为数据源的界面元素, 会把dataSource连接到控制器上, 然后由控制器采纳数据源协议并实现方法. 这与以往所见的大不相同, 如果有两个数据源该怎么办?
关于#pragma. 是用于XCode识别代码的标记, 被编译器忽略.
方法分类:
1 | #pragma mark 采纳UIPickerDataSource协议 |
白空格:
1 | #pragma mark - |
压制未使用变量警告:
1 | #pragma unused(unusedVar) |