2013年8月20日
摘要: layoutSubviews在以下情况下会被调用:1、init初始化不会触发layoutSubviews2、addSubview会触发layoutSubviews3、设置view的Frame会触发layoutSubviews,当然前提是frame的值设置前后发生了变化4、滚动一个UIScrollView会触发layoutSubviews5、旋转Screen会触发父UIView上的layoutSubviews事件6、改变一个UIView大小的时候也会触发父UIView上的layoutSubviews事件//当我们的tableview的宽度和高度改变了的时候,就会调用这个方法来方便我们重新定义内部 阅读全文
posted @ 2013-08-20 23:59 flower42 阅读(164) 评论(0) 推荐(0) 编辑
摘要: 属性的特性:copy和retain的区别1. 属性特性retain和copy的对比:@intertace Possession : NSObject{ NSString *_possessionName; NSString *_possessionClass;}//我们分别将两个属性设置成不同的特性,一个为retain, 一个为copy,这样为了做个对照。@property (nonatomic, retain) NSString *possessionName;@property (nonatomic, copy) NSString *possessionClass;在生成的存方法中是这.. 阅读全文
posted @ 2013-08-20 16:29 flower42 阅读(222) 评论(0) 推荐(0) 编辑
摘要: * assign: 简单赋值,不更改索引计数(Reference Counting)。* copy: 建立一个索引计数为1的对象,然后释放旧对象* retain:释放旧的对象,将旧对象的值赋予输入对象,再提高输入对象的索引计数为1* 使用assign: 对基础数据类型 (NSInteger)和C数据类型(int, float, double, char,等)* 使用copy: 对NSString* 使用retain: 对其他NSObject和其子类copy是创建一个新对象,retain是创建一个指针,引用对象计数加1。1.readonly表示这个属性是只读的,就是只生成getter方法,不会生 阅读全文
posted @ 2013-08-20 16:11 flower42 阅读(285) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2013-08-20 15:34 flower42 阅读(5) 评论(0) 推荐(0) 编辑
摘要: //parmas是一个字典,enumerateKeysAndObjectsUsingBlock 这个是遍历整个parmas,这个参数的所有值 取出key 和obj值 [parmas enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { [urlString appendFormat:@"%@=%@&",key,obj]; }]; 阅读全文
posted @ 2013-08-20 11:32 flower42 阅读(172) 评论(0) 推荐(0) 编辑
摘要: Blocks 、和新浪微博项目有应用到将blocks当成对象来处理,它封装了一段代码,这段代码可以在任何时候执行。Blocks可以作为函数参数或者函数的返回值,而其本身又可以带输入参数或返回值。它和传统的函数指针很类似,但是有区别:blocks是inline的,并且它对局部变量是只读的。Blocks的定义:[cpp]view plaincopyint(^myBlock)(inta,intb)=^(inta,intb){returna+b;};定义了一个名为myBlock的blocks对象,它带有两个int参数,返回int。等式右边就是blocks的具体实现,是不是有点像方法的定义?Blocks 阅读全文
posted @ 2013-08-20 10:34 flower42 阅读(158) 评论(0) 推荐(0) 编辑