iPhone アプリをほぼ完成させ、XCode 4 と IOS シミュレーターを使用してテストを行っています。私のアプリには、モーダルを開く一連のビューがあります。
ビュー 1 --> モーダル --> ビュー 2 --> モーダル --> ビュー 3 --> モーダル --> ビュー 4
ビュー 2 はビュー 3 のデリゲートであり、ビュー 3 はビュー 4 のデリゲートです。
View4 が表示されていて、「メモリ警告をシミュレート」しようとすると、View3 に戻ることができますが、View3 はそのデリゲート ( [self.delegate NotifySave:self]
) を呼び出すことができません。
デリゲートを呼び出す前にブレークポイントを配置すると、「0xsomething」ではなく「0x0」が表示されます。「ホーム」ボタンでアプリケーションを「終了」しても、アプリを再度実行すると、(もちろん) 問題は解決しません。
質問は次のとおりです。
- 他の誰かが同じ問題を経験しましたか?
- この問題はシミュレータだけに存在するのでしょうか? (実際の iPhone で警告を再現することはできません)
- 誰か提案がありましたか?
- View2 が解放されないようにすることはできますか? (これが問題の原因だと思います)
助けてくれてありがとう。