新しいビューでナビゲーションコントローラーを使用してMapViewを開くと、マップが読み込まれるまで待機せずに戻るボタンをクリックすると、例外がスローされます。誰でもこれを確認できますか?回避策とは何ですか?
1118 次
2 に答える
4
ナビゲーションコントローラーの割り当てを解除するときにマップビューを解放していますか?
デリゲートが解放された後、mapview がそのデリゲート (ナビゲーション コントローラー) にメッセージを送信している可能性があります。
解放する前に、マップビューのデリゲートを nil に設定してみてください。
于 2009-06-29T21:48:36.563 に答える
1
この正確なエラーがありました。
これは、クラス内のいくつかのデリゲートメソッドが原因で発生します。そのクラスをポップし、マップが処理でビジー状態になると、メモリを残したクラスを呼び出そうとします。
単に追加しました
- (void)dealloc
{
// release the map delegate otherwise it will try and call our classes with no data.
// map for me is my MKMapView
map.delegate = nil;
[super dealloc];
}
于 2009-07-01T12:10:12.623 に答える