Android 高德地图常见设置记录

最近开发用到高的地图,将自己编码常用的参数设置记录一下。

aMap.moveCamera(CameraUpdateFactory.zoomTo(16));//缩放级别

myLocationStyle = new MyLocationStyle();//初始化定位蓝点样式类

/*
myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_FOLLOW) ;//连续定位、且将视角移动到地图中心点,定位蓝点跟随设备移动。(1秒1次定位) myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_MAP_ROTATE);//连续定位、且将视角移动到地图中心点,地图依照设备方向旋转,定位点会跟随设备移动。(1秒1次定位) myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE);//连续定位、且将视角移动到地图中心点,定位点依照设备方向旋转,并且会跟随设备移动。(1秒1次定位)默认执行此种模式。 //以下三种模式从5.1.0版本开始提供 myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE_NO_CENTER);//连续定位、蓝点不会移动到地图中心点,定位点依照设备方向旋转,并且蓝点会跟随设备移动。 myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_FOLLOW_NO_CENTER);//连续定位、蓝点不会移动到地图中心点,并且蓝点会跟随设备移动。 myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_MAP_ROTATE_NO_CENTER);//连续定位、蓝点不会移动到地图中心点,地图依照设备方向旋转,并且蓝点会跟随设备移动。*/
myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE);//连续定位、且将视角移动到地图中心点,定位点依照设备方向旋转,并且会跟随设备移动。(1秒1次定位)如果不设置myLocationType,默认也会执行此种模式。
myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATE);//只定位一次,移动定位到地图正中心

myLocationStyle.interval(5000); //设置连续定位模式下的定位间隔,只在连续定位模式下生效,单次定位模式下不会生效。单位为毫秒。
aMap.setMyLocationStyle(myLocationStyle);//设置定位蓝点的Style
myLocationStyle.anchor(0.0f, 1.0f);//设置定位蓝点图标的锚点方法。
aMap.getUiSettings().setMyLocationButtonEnabled(true);//设置默认定位按钮是否显示,非必需设置。
aMap.setMyLocationStyle(myLocationStyle);//设置定位蓝点的Style
aMap.setMyLocationEnabled(true);// 设置为true表示启动显示定位蓝点,false表示隐藏定位蓝点并不进行定位,默认是false。
aMap.setOnMapClickListener(this);// 对amap添加单击地图事件监听器
aMap.setOnMarkerClickListener(this);
aMap.setOnMyLocationChangeListener(this);//定位监听,因为每个0.5S定位一次,此方法会不断接收定位信息
mUiSettings = aMap.getUiSettings();//实例化UiSettings类对象
mUiSettings.setScaleControlsEnabled(true);//显示比例尺
mUiSettings.setCompassEnabled(true);//显示指南针
mUiSettings.setLogoBottomMargin(-50);//隐藏logo
mUiSettings.setZoomControlsEnabled(false);
mUiSettings.setMyLocationButtonEnabled(false);

//------------------------我是分割线-------------------我是分割线------------------------------------我是分割线------------------------------

//接口实现

/**
 * 点击地图监听回调
 *
 * @param latLng
 */
@Override
public void onMapClick(LatLng latLng) {}
/**
 * marker点击监听
 *
 * @param marker
 * @return
 */
@Override
public boolean onMarkerClick(final Marker marker) {}
/**
 * 定位监听
 *
 * @param location
 */
@Override
public void onMyLocationChange(Location location) {}
/**
 * 地理编码转地址
 *
 * @param regeocodeResult
 * @param i
 */
@Override
public void onRegeocodeSearched(RegeocodeResult regeocodeResult, int i) {}

@Override
public void onGeocodeSearched(GeocodeResult geocodeResult, int i) {}
/**
 * 开始搜索路径规划方案
 */
public void searchRouteResult(int routeType, int mode) {
    if (mStartPoint == null) {
        //ToastUtil.show(mContext, "起点未设置");
        return;
    }
    if (mEndPoint == null) {
        //ToastUtil.show(mContext, "终点未设置");
    }
    //showProgressDialog();
    final RouteSearch.FromAndTo fromAndTo = new RouteSearch.FromAndTo(
            mStartPoint, mEndPoint);
    if (routeType == ROUTE_TYPE_DRIVE) {// 驾车路径规划
        RouteSearch.DriveRouteQuery query = new RouteSearch.DriveRouteQuery(fromAndTo, mode, null,
                null, "");// 第一个参数表示路径规划的起点和终点,第二个参数表示驾车模式,第三个参数表示途经点,第四个参数表示避让区域,第五个参数表示避让道路
        mRouteSearch.calculateDriveRouteAsyn(query);// 异步路径规划驾车模式查询
        aMap.setOnPolylineClickListener(this);

    }
}
/**
 * 驾车路线规划
 *
 * @param driveRouteResult
 * @param i
 */
@Override
public void onDriveRouteSearched(DriveRouteResult driveRouteResult, int i) {}
/**
 * 点击监听路线规划的线
 *
 * @param polyline
 */
@Override
public void onPolylineClick(final Polyline polyline) {}

 

你可能感兴趣的:(Android疑难杂症,android,高德地图,参数设置,路线规划,定位)