2012-02-22 5 views
1

私はARCを初めて使いました。私は1週間もかかっていませんでした。私がやろうとしているのは非常に基本的なことです。私は、ボタンを表示するView Controllerを持っています。ボタンをクリックすると、対応するセレクターを呼び出す必要があります。しかし、ARCでは、アプリケーションがEXC_BAD_ACCESSメッセージでクラッシュしました。以下は私のMainViewControllerからコードARCは早めにViewControllerを解放します

- (void)loadView 
{ 
    [super loadView]; 
    UIButton *testButton=[UIButton buttonWithType:UIButtonTypeRoundedRect]; 
    [testButton setFrame:CGRectMake(80,50,160,50)]; 
    [testButton setTitle:@"Click Me" forState:UIControlStateNormal]; 
    [testButton addTarget:self action:@selector(buttonClicked:) forControlEvents:UIControlEventTouchUpInside]; 

    [self.view addSubview:testButton]; 
} 

-(void)buttonClicked:(id)sender 
{ 
    NSLog(@"Button Clicked"); 
} 

私はゾンビオブジェクトを有効にし、デバッグログ上記のメッセージを見てみると

2012-02-21 22:46:00.911 test[2601:f803] *** -[MainViewController performSelector:withObject:withObject:]: message sent to deallocated instance 0x6b4bba0 

に次のメッセージを見つけることができたが、ARCがあるように私には思えます私のMainViewControllerを途中で解放します。 私はここで何が間違っているのか分かりません。私が何かを見逃している場合は、私に知らせてください。この答えは助けた - 誰にもこれに似た症状を持っていますが、私の場合のようにストーリーボードとSeguesを使用している場合には、事前

+3

VCがどのように初期化されているのかわからないのですが、私はあなたがそれに強い参照を持っていないと思う。 –

答えて

10

おかげで強いキー

@property (strong, nonatomic) MainViewController *mvc; 
+0

@ user1225102:これはおそらくリグの答えです。そうでなければ、さらにコードを見る必要があります。 –

+0

ありがとう、トンバディ。それはうまくいった! – cybervedaa

+0

これも私の問題を解決しますが、この問題の原因は何ですか? –

関連する問題