ViewオブジェクトでremoveFromSuperviewを呼び出すときに問題が発生します。 - > MYVIEW 1目的CメソッドremoveFromSuperviewにより、割り当て解除されたオブジェクトにメッセージが送信される
addSubview
MYVIEWのALLOC:割当履歴(器具によれば)は、以下であるMYVIEW - > MYVIEW 2
MYVIEWリリース - > MYVIEW 1
MYVIEWのremoveFromSuperview - > MYVIEW 0
MYVIEWのにdealloc - > MYVIEW -1(removeFromSuperviewによって呼び出された)
私がいることを理解して参照カウントが0に達したため、deallocメソッドが呼び出されます。しかし、参照カウントが1つ減少してメッセージが割り当て解除されたメソッドに送られる理由を理解できません。
また、計測器を使用して検出することもできます。 xcodeを使用するとクラッシュしません。
ご協力いただければ幸いです。 ありがとうございました。
最後の 'myView dealloc'を手動で呼び出すのですか、それとも' removeFromSuperview'によって呼び出されますか? – Paul
removeFromSuperviewによって呼び出されています。 –
myViewを最初にリリースせずにアプリを試しましたので、カウントはまだ2ですか?私は 'removeFromSuperview'が自動的に追加の' alloc'を処理すると思います。 – Paul