UITableView のデリゲートおよびデータソースとしてカスタム クラスを使用しています。私は私のviewDidLoadメソッドでこれを(何かのように)やっています:
MyClass *myObject = [[MyClass alloc] init];
tableViewOutlet.delegate = myObject;
tableViewOutlet.dataSource = myObject;
確かに、どこかで myObject の保持カウントを減らす必要がありますか? しかし、ここで [myObject release] を呼び出すと、非常に悪い結果になります。テーブルが処理を完了する前に、デリゲートが破棄されます。
私が試してみました
MyClass *myObject = [[[MyClass alloc] init] autorelease];
しかし、それはまた恐ろしい結果をもたらします。
ここでメモリリークがありますか?もしそうなら、デリゲートを安全に解放する方法と時期は?