1.触控板手势操作(链接)
2.回调函数(链接)
3. block的使用
- block可以访问和修改内部及全局变量,但不能访问外部的局部变量,若要访问,需在局部变量前加
__block
- block作为函数参数
- block作为参数的例子:
cmp
函数
4. 协议
- 协议只有.h文件,只包含方法声明,不能有属性和方法实现。用于被类遵守,这些类就都拥有所有方法声明。具体方法由各类自己实现。如果遵守了某协议,但未实现某方法,只会警告不会报错。但如果调用了未实现的方法,则会报错。
@required
表示若未实现会警告,@optional
都不会报警告,这两个关键字用于修饰协议中方法的声明。主要用于程序员沟通,@required
修饰的方法,说明希望编写类的程序员实现,可能会调用。- 协议之间可以继承,类和协议名可以一致,默认一致时,该类需要遵守同名协议。
5. Foundation框架
-
NSString类相关:
a. 恒定性
b. 声明一个常量后,无法再更改,重新赋值时,实际上是在常量区重新找了一块内存,存放新的常量,并将新地址返回到指针中。若第二个指针也赋值为已有变量,则会直接从内存中取出上一次存放的地址,而不会重新找新内存。
c. 为了可变,可以声明NSMutableString类 -
NSArray相关:
a. 可存储不同类型元素,遍历方式用foreach
语句:
for(id item in arr): ...