Android天地图常用工具
程序员文章站
2022-07-01 22:29:37
...
/**
* 天地图工具
*/
public class SkyLandMap {
/**
* 设置中心点
*
* @param context 上下文对象
* @param mapView 地图对象
* @param point GeoPoint point = new GeoPoint((int) (29.540659410147214 * 1E6), (int) (106.55687441905739 * 1E6));
* @param ico 图标
*/
public static void showCenter(Context context, MapView mapView, GeoPoint point, @DrawableRes int ico) {
//天机覆盖物
addMarkerOverlay(context, mapView, point, ico);
//设置地图中心点
mapView.getController().setCenter(point);
}
/**
* 添加标记
*
* @param context 上下文对象
* @param mapView 地图对象
* @param geoPoint 坐标点
* @param ico
*/
public static void addMarkerOverlay(Context context, MapView mapView, GeoPoint geoPoint, @DrawableRes int ico) {
addMarkerOverlay(context, mapView, geoPoint, ico, null);
}
/**
* 添加标记
*
* @param geoPoint 地理坐标
* @param ico 图标
*/
public static void addMarkerOverlay(Context context, MapView mapView, GeoPoint geoPoint, @DrawableRes int ico, MarkerOverlay.OnMarkerClickListener listener) {
MarkerOverlay markerOverlay = new MarkerOverlay();
markerOverlay.setClickListener(listener);
markerOverlay.setIcon(context.getResources().getDrawable(ico));
markerOverlay.setPosition(geoPoint);
mapView.addOverlay(markerOverlay);
}
/**
* 地理反编码
*
* @param geoPoint 坐标
* @param listener 监听
*/
public static void geoDecode(GeoPoint geoPoint, TGeoDecode.OnGeoResultListener listener) {
TGeoDecode tGeoDecode = new TGeoDecode(listener);
tGeoDecode.search(geoPoint);
}
/**
* 搜索坐标获取地址
*
* @param geoPoint 坐标点
* @param listener 监听
*/
public static void searchGeoPoint(GeoPoint geoPoint, TGeoDecode.OnGeoResultListener listener) {
TGeoDecode tGeoDecode = new TGeoDecode(listener);
tGeoDecode.search(geoPoint);
}
}
上一篇: 身体好不好,看“睡姿”就知道!10种疾病各有专属睡姿!
下一篇: 经常痛经可能会引起的其他病症