我有商店列表,当我根据从网络服务器获得的纬度和经度值单击任何一个时,我会在 map 上显示它们。他们中的一些人出现了,但有些人不会……我知道这不是一个好问题……但我只是期待可能遇到同样问题的人可能会有所帮助。
代码如下:
Double Storelat = (FeedListViewActivity.lat);
Double Storelng = (FeedListViewActivity.lng);
storeLocation = new GeoPoint((int) (Storelat * 1E6), (int) (Storelng * 1E6));
public void draw(Canvas canvas, MapView mapView, boolean shadow) {
super.draw(canvas, mapView, shadow);
Point locationPoint1 = new Point();
Projection projection1 = mapView.getProjection();
projection1.toPixels(storeLocation, locationPoint1);
Paint containerPaint = new Paint();
containerPaint.setAntiAlias(true);
int containerX1 = locationPoint1.x;
int containerY1 = locationPoint1.y;
if (shadow) {
containerX1 += CONTAINER_SHADOW_OFFSET;
containerY1 += CONTAINER_SHADOW_OFFSET;
containerPaint.setARGB(90, 0, 0, 0);
canvas.drawCircle(containerX1, containerY1, CONTAINER_RADIUS,
containerPaint);
} else {
containerPaint.setColor(Color.RED);
canvas.drawCircle(containerX1, containerY1, CONTAINER_RADIUS,
containerPaint);
}
}
这些是我从网络服务器获得的值:
工作:
纬度 = 18.5170002 lng = 73.858078
不工作:
纬度 = 18.618679 lng = 73.8037491
最佳答案
你的答案就在你的问题本身
working:
lat = 18.5170002 lng = 73.858078
not working:
lat = 18.618679 lng = 73.8037491
按照上面提供的东西,你可以看到精度差异我也遇到了同样的问题是 6 个月,我已经将 6 精度提高到 8 精度并且当时运行良好。
如果您通过 18.618679,那么它会将其视为 0.18618679 以进行确认尝试缩小到 2 级或 3 级,您将在意想不到的地方得到您的观点。
关于android - 谷歌地图上没有显示几个位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10635603/