時には、オブジェクトを解放しないと混乱することがあります。私が持っている:リピート属性がYESのNSTimerをリリースする必要がありますか?
NSTimer *timer2;
timer2 = [NSTimer scheduledTimerWithTimeInterval: (5)
target: self
selector: @selector(someMethod:)
userInfo: nil
repeats: YES];
とのは、5秒ごとに実行され得る方法は次のとおりです。
-(void) someMethod:(NSTimer*)theTimer
{
NSLog(@"code got executed");
}
I持って私のルートビューコントローラ上の別のnibファイルを配置する別の方法:
ViewControllerObjetivos *control = [ViewControllerObjetivos alloc];
[control initWithNibName:@"ViewControllerObjetivos" bundle:nil];
UINavigationController *navControl = [[UINavigationController alloc]
initWithRootViewController:control];
[self presentModalViewController:navControl animated:NO];
[navControl setNavigationBarHidden:YES];
[control release];
[navControl release];
その最後のメソッドを呼び出すと、新しいnibファイルgetがルートビューコントローラに置かれます。そしていくつかのメソッドはまだ呼び出されます!
私はそれを初期化するために単語のinitまたはアロケーションやコピーを使用していなかったので、私はタイマ2を解放する必要がある場合ので、私は混乱しています。だから私は何をすると思いますか?私はそれを止めて、私が最後に示した方法を呼ぶべきでしょうか?私は新しいものと一緒に作業しているので、nibファイル全体をリリースする必要がありますか?
私はNOに等しいオートリピートプロパティを設定している場合セルジオは私はまだinvalidateメソッドを呼び出す必要がありますか? –
私の編集内容をご覧ください... – sergio