iOS点滴

禁止用户操作的另外一种方法:

[[UIApplication sharedApplication] beginIgnoringInteractionEvents];
[[UIApplication sharedApplication] endIgnoringInteractionEvents];

setObject forKey 和 setValue forKey的区别

首先setValue是NSObject的方法,也就是说基本任何OC的类都可以调用这个方法,所以不论是NSDictionary还是NSMutableDictionary都可以调用这个方法。
而setObject是NSMutableDictionary中定义的方法,只有NSMutableDictionary可以调用。
setObject: value和key都不能为nil否则crash。但是value可以是[NSNull null]。
setValue:value可以为nil,key依然不能为nil,否则crash。如果value为nil,会直接remove对应的key。

多用类型常量,少用#define预处理指令

如果知道常量的类型,尽量不要使用define,这样清楚的描述了常量的含义。

如果只在当前文件使用:

static const NSTimeInterval kAnimationDuration = 0.3;

变量一定要同时用static和const声明。const保证了变量不可变,static意味着变量只在当前文件可见。

判断一个view是否对于用户是可见的

if (view.window != nil && view.hidden == NO && view.alpha > 0) {
    // do stuff
}
posted @ 2017-04-06 16:42  张驰小方块  阅读(126)  评论(0编辑  收藏  举报