0

MyLocationOverlayを追加するmapViewがあります。アプリを最初から起動すると(onCreateを通過すると)正常に表示されます。アプリを終了して(戻るボタン)、もう一度起動すると(onResume)、オーバーレイが消えます。

私はこれを10時間以上修正しようとしました。オーバーレイを再度追加することによるあらゆる種類の混乱。オーバーレイをリセットします。再描画を強制されるようにマップの場所を変更します。オーバーレイを手動で無効にするか、強制的に再描画しようとしています。何も機能していません。

コードの見た目からすると、Overlayオブジェクトが存在し、すべてが正常に機能していますが、マップ上にないだけです。

他にこの問題を抱えている人はいますか?

(Droid Incredible、2.2)

4

2 に答える 2

0

アプリを終了し([戻る]ボタン)、もう一度起動すると(onResume)、オーバーレイは表示されなくなります。

戻るボタンはアクティビティを破棄します。再度起動すると、再度onCreate()呼び出されます。onCreate()したがって、オーバーレイの追加に失敗することがある理由を理解する必要があります。

これは、問題のないオーバーレイを表示するプロジェクトです。おそらく、比較のポイントとして役立つ可能性があります。

于 2011-01-10T01:20:24.153 に答える
0

私が持っているアプリのどこか

_locationManager.requestLocationUpdates(provider, Vars.GPS_MIN_UPDATE_MILLISECS, Vars.GPS_MIN_UPDATE_METERS, _locationListener);

これをコメントアウトすると、問題が修正されます。奇妙なことに、この行はonCreate中に1回だけ呼び出され、onResume中にはまったく呼び出されません。

ただし、ロケーションの更新を手動でリッスンすることにはいくつかの競合があるようです(LocationListenerを実装するクラスを使用)。

もっと理解したらこれに戻ります。

重要!-これはおそらくこの質問と同じ問題です:Androidでアプリを閉じて再度開いた後、GPSが位置を更新しない

于 2011-01-10T04:50:57.863 に答える