0

問題を簡単な例に分解してみます。ビューのちょうど真ん中にとどまる円を描こうとしました。このために、オーバーレイの draw メソッドで次のコードを使用しました。


GeoPoint mapCenter = mapView.getMapCenter();
Projection projection = mapView.getProjection();

int centerLat = mapCenter.getLatitudeE6();
int centerLong = mapCenter.getLongitudeE6();

Point pCircleCenter = new Point();

GeoPoint circleCenter = new GeoPoint(centerLat, centerLong);

projection.toPixels(circleCenter, pCircleCenter);

canvas.drawCircle(pCircleCenter.x, pCircleCenter.y, 30, testPaint);

コードを実行すると、円は画面の真ん中にあります。また、縦にスクロールすると真ん中にとどまりますが、横にスクロールすると、円はスクロールされた方向にわずかに移動します。数回スクロールした後、円は中央に留まらず、完全に位置がずれています。

(これは私の問題の単純化されたバージョンですが、ビューの中央に貼り付けるのではなく、この方法で中央を取得する必要があります。)

4

1 に答える 1

0

1 つのオプションはImageView、レイアウト ファイルを介して を追加することです。

于 2012-05-14T01:32:43.503 に答える