1

h ファイルに複数のインスタンスを作成しました

IBOutlet UIImageView *imageView;
IBOutlet UIImageView *subImageView;
IBOutlet UIImageView *arrowRight;
IBOutlet UIImageView *arrowLeft;
IBOutlet UIImageView *arrowDown;

私のプロジェクトはARCモードです

それらを解放するには、dealloc () メソッドでそれらを nil に設定する必要がありますか??

ありがとう

4

3 に答える 3

0

オブジェクトの1つが割り当て解除された後、グローバルインスタンスが必要ない場合は、グローバルポインタをに設定するのが最善の方法nilですdealloc

- (void)dealloc {
    gYourGlobalPointer = nil;
}

ARCでは呼び出すことができないことに注意してください[super dealloc]。deallocはスーパークラスに自動的に送信されます。

于 2013-02-14T05:41:29.590 に答える
0

ARCでは、プロパティの検証可能なインスタンスをリリースすることをまったく心配する必要はありません。コンパイラがそれらを処理します。

手動でリリースする場合は、特定のインスタンスを指すすべての強力な変数にnilを割り当てる必要があります。

于 2013-03-18T06:49:00.467 に答える
0

次のように、それらをゼロにすることができ viewDidUnloadます。

- (void)viewDidUnload
{
    [super viewDidUnload];
    // Release any retained subviews of the main view.
    self.myOutlet = nil;
}
于 2013-02-14T05:44:48.223 に答える