私のアプリでは次の機能が動作しています。
- MyLocationOverlayを使用して現在地を取得します。
- 点滅する青いマーカーの代わりにカスタムマーカーをドロップできるように、MyLocationOverlayを拡張しました。
最後の要件についてサポートが必要です。MyLocationOverlayが最初に見つけたと言っている場所にマーカーを固定し、衛星から衛星にジャンプするときに移動しないようにしたいだけです。
このタイプのユーザーエクスペリエンスを作成するための私のオプションは何ですか?
私のアプリでは次の機能が動作しています。
最後の要件についてサポートが必要です。MyLocationOverlayが最初に見つけたと言っている場所にマーカーを固定し、衛星から衛星にジャンプするときに移動しないようにしたいだけです。
このタイプのユーザーエクスペリエンスを作成するための私のオプションは何ですか?
CustomLocationOverlay 内の drawMyLocation 関数に供給される最初のジオポイントを保存し、関数に供給される myLocation の代わりにそれを使用することをお勧めします。
int intFirstGeoPoint = 0;
GeoPoint FirstGeoPoint;
protected void drawMyLocation(Canvas canvas, MapView mapView, Location lastFix, GeoPoint myLocation, long when) {
if(intFirstGeoPoint == 0){
FirstGeoPoint=myLocation;
intFirstGeoPoint=1;
}else{
myLocation=FirstGeoPoint;
}
// translate the GeoPoint to screen pixels
Point screenPts = mapView.getProjection().toPixels(myLocation, null);
...
...
この場所をキャプチャして、LocationOverlay をハイジャックする代わりに、このポイントのみを描画する新しい DrawableMapOverlay を作成することもできます。