我用ARC的内存管理总结

1,

当图片比较大,你不需要缓存本地的图片时,使用imageWithContentsOfFile:@"myImage"来对图片赋值比较节约;

2,

不要在block中直接使用self,这样会造成循环引用;所以使用__weaktypeof(self)weakself =self;可以解决这个问题;

3,

优化Table View,Table view需要有很好的滚动性能,不然用户会在滚动过程中发现动画的瑕疵。为了保证table view平滑滚动,确保你采取了以下的措施:

· 正确使用reuseIdentifier来重用cells

· 尽量使所有的view opaque,包括cell自身

· 避免渐变,图片缩放,后台选人

· 缓存行高

· 如果cell内现实的内容来自web,使用异步加载,缓存请求结果

· 使用shadowPath来画阴影

· 减少subviews的数量

· 尽量不适用cellForRowAtIndexPath:,如果你需要用到它,只用一次然后缓存结果

· 使用正确的数据结构来存储数据

· 使用rowHeight,sectionFooterHeight和sectionHeaderHeight来设定固定的高,不要请求

delegate

4,

如果你有透明的Views你应该设置它们的opaque属性为YES。

5,正确定义一个弱引用的string

NSString * __weak str =@"hehe";

6,

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容