我需要以编程方式滚动MapView以确保某些内容在视图中.我知道每个方向需要滚动多少像素.我看到方法(在MapController中)将它设置为特定GeoPoint的动画,并按像素滚动它而不用动画.但是没有像素一样用动画来做.
有什么简单的方法可以做到这一点?
好吧,既然没有人回答我会自己回答.这似乎工作正常:
public static void panMap (int x, int y, MapView map) {
Point ptPixels = new Point();
GeoPoint geoPt = map.getMapCenter();
Projection projection = map.getProjection();
projection.toPixels(geoPt, ptPixels);
ptPixels.x += x;
ptPixels.y += y;
geoPt = projection.fromPixels(ptPixels.x, ptPixels.y);
map.getController().animateTo(geoPt);
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1319 次 |
| 最近记录: |