有一個有趣的問題,其中有一個類在XIB佈局(UIScrollView的子類)中引用,並沒有根據儀器/分配和在它的dealloc例程中不會中斷。我們稱之爲Sclass1。從XIB的ARC類的IOS 6.1沒有得到釋放,UIClassSwapper
有一個使用類(我們稱之爲Uclass),它具有XIB文件和插座。
@property (nonatomic, weak) IBOutlet Sclass1* sclass1;
這被正確地掛鉤到XIB文件佈局。
Sclass1是加載Xclass for Uclass時分配的屬性。 Uclass不會重新分配然後不時重新創建,因此我們有另一個Sclass1實例,但Sclass1永遠不會消失,並且找不到另一個參考。
在Instrument中鑽取顯示一個Malloc,就是這樣。
僅供參考,類獲取開始
[UIClassSwapper initWithCoder:]
這是正確的答案,任何屬於IBOutlet的東西都必須很弱,視圖不會被釋放,因爲控制器有一個到插座的保留點,插座有一個對控制器的引用。創建一個保留週期。有一個upvote。 –