1

CustomView(UIViewから継承)にコンテンツを表示したいアプリケーションがあります。ただし、実行時の各時点で必要ないので、メモリの浪費を避けるために、作成および削除したいと思います。

このビューは別のnibファイルにあります。そして、viewControllerにこのコードをロードします:

NSArray *arr = [[NSBundle mainBundle] loadNibNamed:@"MyCustomView" owner:self options:nil];

for (id object in arr) {
    if ([object isKindOfClass:[MyCustomView class]])
        self.myCustomView = (MyCustomView *)object;
}  

[self.view addSubview:self.myCustomView];

myCustomViewはviewControllerのプロパティです

@property (nonatomic, strong) IBOutlet MyCustomView *myCustomView;

しかし、Instrumentsでは、#Livingが3(たとえば、上記のコードを3回呼び出した場合)、#Transitoryは1、#Overallは4であることがわかります。これは、MyCustomViewがリークすることを意味します:(設定self.myCustomView = nilすると役に立たない:(

誰かがこのリークを解決するのを手伝ってくれませんか?ARCを使用しています。

4

1 に答える 1

0

[MyCustomView removeFromSuperview]仕事はしてくれると思います。:)

于 2013-04-16T19:50:07.637 に答える