多数の大きなベクターオーバーレイを備えた Google MapView に基づくアプリがあります。一度に最大 500 個の複雑なポリゴンを画面に表示できます。私の電話 (Android 2.3.4) では、MapView の再描画は、必要かどうかに関係なく、短い間隔で自動的にトリガーされます。
問題:
マップの再描画時間が長いため、UI の応答が遅くなることがあります。たとえば、メニューを開くのに約 1 秒かかる場合があります。どのダイアログも反応が悪いです。
質問:
MapView の自動再描画をオフにすることはできますか? または、UI の応答を改善する方法について何か他の考えはありますか?
*MapView.SetEnabled(false) はそれを行わず、MapView はクリックできなくなるだけです。MapView.setWillNotDraw(true) を実行すると、黒い画面が表示されます。
*私の知る限り、Android 2.2 では自動再描画は行われません (変更を確認するには MapView.Invalidate() が必要です)。OS/ライブラリのバージョンだけでなく、ハードウェアの問題かもしれません。