2010-11-27 13 views
0

インターフェイスビルダーでオブジェクトのインスタンスを作成すると、ロード直後にガベージコレクタによって破棄されます。これに対処するクリーンな方法は何ですか? 私は、コンストラクタで[self retain]を実行できること、またはウィンドウコントローラにコンセントを作成できることを理解しました。私はちょうどこれを行うためのより良い正式な方法がなければならないと思いますか? ありがとう、カオスビットガベージコレクタがInterface Builderからオブジェクトを破棄します

+0

ありません、それはによって破壊されません。ガベージコレクタ。 iOSはまだガベージコレクタを使用していません。 :) – jer

答えて

1

孤立したオブジェクトは特別な場合を除いて一般的には良いアイデアではないので、すべてのオブジェクトには参照を保持する他の親オブジェクトがあります。

これを実現する最善の方法は、ウィンドウコントローラー(または適切な場所)のアウトレットを再発行し、そのプロパティーにretain属性が設定されていることを確認することです。

(追記に、あなたのオブジェクトがガベージコレクトされていない、ココアタッチにはそのようなことがないよう。それは異なる概念である、自動解放されています)

関連する問題