viewWillAppearで生成したオブジェクトをviewDidDisappearで解放する場合等に、ブロックを使うと関連するコードをまとめて記述できます。この方法であればプロパティが増えてもそれぞれにhookを記述できるので、記述漏れを予防しやすいと思います。
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillDisappear:animated];
self.viewWillDisapperHooks = [[NSMutableArray alloc]init];
self.myobject = [[MyObject alloc]init];
[self.viewWillDisapperHooks addObject:^{
self.myobject =nil;
}];
}
- (void)viewDidDisappear:(BOOL)animated
{
[super viewDidDisappear:animated];
for(void (^hook)(void) in self.viewWillDisapperHooks){
hook();
}
self.viewWillDisapperHooks=nil;
}