私は非常に簡単なアプリを持っています。 1 navigationControllerと2つのviewControllers。mapviewで異常なクラッシュが発生するのはなぜですか?
最初のビューにはボタンしかありません。 2番目のビューにはマップビュー(MKMapView)があります。 このマップビューのshow currentlocationプロパティを確認しました 私はアウトレットを作成し、次にBuilder Interfaceを使用してすべてを接続しました。
2番目のdeallocメソッドでは、mapviewのdelegateにnilを設定し、mapview outletを解放します。
mapView.delegate = nil; [mapview release];
私はview1のボタンをタップすると、view2がロードされ、私は戻るボタンをタップします。私がそれを正常にしたら、すべてうまくいく。しかし、私が非常に速くそれをするなら、何度も繰り返す。アプリがクラッシュします。 mapViewを解放していない、またはshowcurrentlocationプロパティをチェックしていない場合、アプリケーションは正常に動作します。
なぜこれが起こるのかわかりません。誰でもこの問題を解決するのに役立ちます。本当にありがとう !
私はこの問題を調査してきたことだった、と答えは:それはMKMapViewのバグです。これを修正するには、MKMapViewオブジェクトの静的インスタントを作成するか、mapViewを解放するための遅延メソッドを約4秒間呼び出します。 –