オブジェクトを解放して再度インスタンス化する最も安全な方法は何だろうと思っています。
私がやっていることはこれであり、うまくいくようですが、これがメモリリークを引き起こしていないかどうかはわかりませんか?
- (void)reLoadCalendarObject
{
if (self.calViewController != nil)
self.calViewController = nil; //release instantiated object
CalViewController *tempCalViewController = [[CalViewController alloc]initWithDate:[NSDate dateWithTimeIntervalSinceNow:0.0f] observer:self];
self.calViewController = tempCalViewController;
[tempCalViewController release];
self.calViewController.dataSource = self.calendarDataSource;
}
self.calViewController
プロパティは次のように宣言されます(nonatomic,retain)