我有ParentViewController
allocates ChildViewController
,将其推送到控制器堆栈并释放它。
ChildViewController
ProductDownloadDelegateProtocol
实现Product 类所需的协议。
在某个时候,ChildViewController
创建一个 Product 对象并将其自身设置为其downloadDelegate
.
下载时,Product
类ChildViewController
通过ProductDownloadDelegateProtocol
.
如果用户在下载时按下导航栏中的后退按钮,ChildViewController
则下载百分比的下一次更新Product
会导致EXC_BAD_ACCESS
.
虽然Product
检查 if downloadDelegate
is nil
,但问题仍然存在,因为ChildViewController/downloadDelegate
已释放,但未设置为nil
。我不知道哪个点最好设置ChildViewController
为nil
.
我的设计错了吗?