0

作業中のアプリ用に、プログラムで独自のカスタム ビュー テンプレートを作成しています。MyVCこれを実現するために、のプロパティであるカスタムビューmyViewが追加されたカスタムビューコントローラーがありますMyVC。クラスは次のようになります。

MyVC.h   
#import <UIKit/UIKit.h>

@interface MyVC : UIViewController{
MyCustomView *myView;
}

@property(nonatomic, retain) MyCustomView *myView

@end

実装では、背景色を「myView」に割り当てたいと思い、viewDidLoad でこのようなことを行います (corse のプロパティを合成した後)

-(void)viewDidLoad{
self.myView = [[MyCustomView alloc] initWithFrame:someFrame];

self.myView.backgroundColor = [UIColor clearColor];  

}

コードを分析すると、色を割り当てると「オブジェクトのリークの可能性」というメッセージが表示されます。myView または背景色、またはその両方が保持されているためですか? いずれにせよ、潜在的なリークなしでこれを正しく行う方法を知りたいですか?

4

1 に答える 1

1

ARC を使用しない場合は、保持されたプロパティを解放する必要があります。

-(void)viewDidLoad{
//allocate and initialize myView

self.myView = [[[MyCustomView alloc] initWithFrame:someFrame] autorelease];
self.myView.backgroundColor = [UIColor clearColor];  
}
于 2012-10-16T07:25:22.750 に答える