![](/img/trans.png)
[英](iphone) uiimage, view, subviews memory management
[英]UIViewControllers… Memory Management With SubViews
我有UIViewController
誰有幾個子視圖,但跟蹤分配的每個子視圖是困難的任務,因為實際的編碼器不是我,需要處理內存消耗。
我的問題是有一種方法來控制內存調用遞歸函數來刪除和釋放UIViewController
中的所有子視圖而不知道實際的引用名稱?
如下面的代碼:
for (UIView* subview in view){
[subview removeFromSuperView];
[subview release] ;
subview = nil;
}
當您在視圖上調用removeFromSuperview
時,它將自動減少保留計數(因為superview不再需要對您剛剛刪除的視圖的引用)。
如果您以標准方式將您的視圖添加到超級視圖中,則不需要執行您正在執行的操作 - 您已添加視圖然后將其發布,或者您的視圖是屬性並且稍后發布。
您提出的代碼(所有子視圖的遞歸循環)是一個壞主意 ,因為您實際上並不知道您的子視圖是否可以安全釋放。 您可以輕松觸發錯誤訪問。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.