iOS开发的小问题

来源:互联网 发布:如何评价余额宝 知乎 编辑:程序博客网 时间:2024/04/29 22:16

1在Uiviewcontroller里面使用了timer,会使得controller被retain ,因此在viewdisapper时应将timer设置为nil否则controller的dealloc的dealloc不会被执行


2如果在UIviewcontroller里面使用asihttprequest发送了async请求,并且将request的delegate设置为controller,若请求没回来就销毁controller会使得request的delegate变为野指针

解决方案是:销毁controller是调用request的cancel来取消请求,或者将request 的delegate设置为nil。另外一种应对delegate变为野指针的方法是,假设delegate的类是A若object_getclass(delegate)!=[A Class];说明是野指针,此时就不能对delegate调用函数了。

0 0
原创粉丝点击