摘要:
IOS中的objective-c采用引用计数方式管理内存,最近在写动画效果的时候遇到了内存泄露问题。关于对象的delegate声明,在objective-c的编程指南中推荐的是使用assign来声明,如果才用retain等增加引用计数的声明方式,管理不当就很容易出现循环引用问题,造成内存无法被释放。但这次写动画发现一个例外,即CABasicAnimation的delegate在赋值时会将对象的引用计数加一。当CABasicAnimation的removeOnCompletion为NO时,动画结束以后并不会被移除,最终形成一个循环引用,对象无法被释放掉。在指定了Animation的delegat 阅读全文