gpt4 book ai didi

android - 从json解析获取坐标并在mapview中显示?

转载 作者:行者123 更新时间:2023-11-30 04:32:15 25 4
gpt4 key购买 nike

通过 jsonparsing 我再次解析所有字符串值我需要在 map View 中显示纬度和经度..我需要将所有坐标存储在一个单独的数组中任何人请帮助我.. 提前致谢

最佳答案

我不确定你的 parseString 功能如何,我假设你可以获得 lat 和 long 的 2 个字符串值。剩下的部分可以按照下面的方式完成

        String coordinates[] = {"...","..."};
double lat = Double.parseDouble(coordinates[0]);
double lng = Double.parseDouble(coordinates[1]);

p = new GeoPoint(
(int) (lat * 1E6),
(int) (lon * 1E6));
//mc is MapView object
mc.animateTo(p);
mc.setZoom(15);

mapView.invalidate();

要在 map 上显示它,需要在res/文件夹中创建一个带有位图精确点的叠加层

MarkerOverlay mark = new MarkerOverlay();
listOfOverlays = mapView.getOverlays();
listOfOverlays.clear();
listOfOverlays.add(mark);
mapView.invalidate();

可以这样定义一个 MapOverlay 类:

  class MarkerOverlay extends com.google.android.maps.Overlay
{
//create a constructor here with p.x and p.y as parameters

@Override
public boolean draw(Canvas canvas, MapView mapView,
boolean shadow, long when)
{
super.draw(canvas, mapView, shadow);

Point screenPts = new Point();
Bitmap bmp = BitmapFactory.decodeResource(
getResources(), R.drawable.pushpin);

GeoPoint point = new GeoPoint(
(int) (p.x * 1E6),
(int) (p.y * 1E6));

mapView.getProjection().toPixels(point, screenPts);
canvas.drawBitmap(bmp, screenPts.x-16, screenPts.y-32, null);
canvas.drawText(parts[0],screenPts.x-16 , screenPts.y-40, new Paint());
}
}
}


return true;
}
}

关于android - 从json解析获取坐标并在mapview中显示?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7495505/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com