/**
* 天地圖工具
*/
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);
}
}
Android天地圖常用工具
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.