Map 地图 覆盖物

package bw.com.bw_day10.demo02;


import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;


import com.baidu.mapapi.SDKInitializer;
import com.baidu.mapapi.map.BaiduMap;
import com.baidu.mapapi.map.BitmapDescriptor;
import com.baidu.mapapi.map.BitmapDescriptorFactory;
import com.baidu.mapapi.map.MapView;
import com.baidu.mapapi.map.Marker;
import com.baidu.mapapi.map.MarkerOptions;
import com.baidu.mapapi.map.OverlayOptions;
import com.baidu.mapapi.model.LatLng;


import bw.com.bw_day10.R;


/**
 * 覆盖物
 * 1,  加载普通地图
 *      1.1  在百度开放平台中获取AK
 *      1.2  配置Android Studio 环境
 *      1.3  在清单文件中, 添加ak 和 权限
 *      1.4  在布局页面中, 写入地图控件
 *      1.5  在Activity 中, super 和 setContentView() 之间, 初始化地图
 *      1.6  将Activity的生命周期和地图的生命周期结合
 */
public class CoverMapActivity extends AppCompatActivity {


    private MapView mMapView;
    private BaiduMap mBaiduMap;//百度地图管理器对象


    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        //TODO 初始化地图的操作
        SDKInitializer.initialize(getApplicationContext());


        setContentView(R.layout.activity_cover_map);


        mMapView = (MapView) findViewById(R.id.map_view_id);
        mBaiduMap = mMapView.getMap();


        //TODO 定义Maker坐标点
        LatLng point = new LatLng(39.963175, 116.400244);


        //TODO 构建Marker图标
        BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.mipmap.icon_marka);


        //TODO 构建MarkerOption,用于在地图上添加Marker
        OverlayOptions option = new MarkerOptions()
                .position(point)//设置坐标点
                .icon(bitmap)//设置图标
                .draggable(true);  //TODO 1, 拖拽 -- 设置是否可以拖拽


        //TODO 在地图上添加Marker,并显示
        mBaiduMap.addOverlay(option);


        //TODO 2, 拖拽 -- 设置监听器 调用BaiduMap对象的setOnMarkerDragListener方法设置Marker拖拽的监听
        mBaiduMap.setOnMarkerDragListener(new BaiduMap.OnMarkerDragListener() {
            public void onMarkerDrag(Marker marker) {
                //拖拽中
                Log.e("TAG","-拖拽中--");
            }
            public void onMarkerDragEnd(Marker marker) {
                //拖拽结束
                Log.e("TAG","-拖拽结束--");
            }
            public void onMarkerDragStart(Marker marker) {
                //开始拖拽
                Log.e("TAG","-拖拽开始--");
            }
        });


        //TODO 设置覆盖物的点击事件
        mBaiduMap.setOnMarkerClickListener(new BaiduMap.OnMarkerClickListener() {
            @Override
            public boolean onMarkerClick(Marker marker) {


                Log.e("TAG","-点击事件监听器--");
                return false;
            }
        });
    }


    @Override
    protected void onDestroy() {
        super.onDestroy();
        mMapView.onDestroy();
    }


    @Override
    protected void onResume() {
        super.onResume();
        mMapView.onResume();
    }


    @Override
    protected void onPause() {
        super.onPause();
        mMapView.onPause();
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值