• Android百度地图开发(一):概述
  • Android百度地图开发(二):项目创建
  • Android百度地图开发(三):定位
  • Android百度地图开发(四):创建地图
  • Android百度地图开发(五):图层
  • Android百度地图开发(六):图形绘制
  • Android百度地图开发(七):地图事件监听

可以监听到地图事件有:

  • key验证(通过广播)
  • 地图状态改变(包含手势、设置地图状态或其他某种操作导致地图状态改变)
  • 地图单击事件
  • 地图加载完成
  • 地图渲染完成
  • 地图双击事件
  • 地图长按事件
  • 地图 Marker 覆盖物点击事件
  • 地图定位图标点击事件
  • 地图截屏回调
  • 触摸地图
        //监听地图事件监听        IntentFilter iFilter = new IntentFilter();        //key 验证失败        iFilter.addAction(SDKInitializer.SDK_BROADTCAST_ACTION_STRING_PERMISSION_CHECK_ERROR);        registerReceiver(mReceiver, iFilter);        public class SDKReceiver extends BroadcastReceiver {        public void onReceive(Context context, Intent intent) {            String action = intent.getAction();            if(action.equals(SDKInitializer.SDK_BROADTCAST_ACTION_STRING_PERMISSION_CHECK_ERROR))            {                // key 验证失败,相应处理            }        }    }    //地图状态改变    BaiduMap.OnMapStatusChangeListener mOnMapStatusChangeListener = new BaiduMap.OnMapStatusChangeListener() {        /**         * 手势操作地图,设置地图状态等操作导致地图状态开始改变。         * @param mapStatus 地图状态改变开始时的地图状态         */        @Override        public void onMapStatusChangeStart(MapStatus mapStatus) {            toast("onMapStatusChangeStart");        }        /** 因某种操作导致地图状态开始改变。         * @param mapStatus 地图状态改变开始时的地图状态         * @param reason 表示地图状态改变的原因,取值有:         * 1:用户手势触发导致的地图状态改变,比如双击、拖拽、滑动底图         * 2:SDK导致的地图状态改变, 比如点击缩放控件、指南针图标         * 3:开发者调用,导致的地图状态改变         */        @Override        public void onMapStatusChangeStart(MapStatus mapStatus, int reason) {            toast("onMapStatusChangeStart");        }        /**         * 地图状态变化中         * @param mapStatus 当前地图状态         */        @Override        public void onMapStatusChange(MapStatus mapStatus) {            toast("onMapStatusChange");        }        /**         * 地图状态改变结束         * @param mapStatus 地图状态改变结束后的地图状态         */        @Override        public void onMapStatusChangeFinish(MapStatus mapStatus) {            toast("onMapStatusChangeFinish");        }    };    //地图单击事件    BaiduMap.OnMapClickListener listener = new BaiduMap.OnMapClickListener() {        /**         * 地图单击事件回调函数         * @param point 点击的地理坐标         */        public void onMapClick(LatLng point){            toast("onMapClick");        }        /**         * 地图内 Poi 单击事件回调函数         * @param poi 点击的 poi 信息         */        public boolean onMapPoiClick(MapPoi poi){            return false;        }    };    //地图加载完成回调    BaiduMap.OnMapLoadedCallback mOnMapLoadedCallback = new BaiduMap.OnMapLoadedCallback() {        /**         * 地图加载完成回调函数         */        public void onMapLoaded(){            toast("地图加载完成回调");        }    };    //地图渲染完成    BaiduMap.OnMapRenderCallback mOnMapRenderCallback = new BaiduMap.OnMapRenderCallback() {        @Override        public void onMapRenderFinished() {            toast("地图渲染完成");        }    };    //地图双击事件监听    BaiduMap.OnMapDoubleClickListener mOnMapDoubleClickListener = new BaiduMap.OnMapDoubleClickListener() {        @Override        public void onMapDoubleClick(LatLng latLng) {            toast("地图双击");        }    };    //地图长按事件监听    BaiduMap.OnMapLongClickListener mOnMapLongClickListener = new BaiduMap.OnMapLongClickListener() {        @Override        public void onMapLongClick(LatLng latLng) {            toast("地图长按");        }    };    //地图 Marker 覆盖物点击事件监听    BaiduMap.OnMarkerClickListener mOnMarkerClickListener = new BaiduMap.OnMarkerClickListener() {        @Override        public boolean onMarkerClick(Marker marker) {            return false;        }    };    //地图定位图标点击事件监听    BaiduMap.OnMyLocationClickListener mOnMyLocationClickListener = new BaiduMap.OnMyLocationClickListener() {        @Override        public boolean onMyLocationClick() {            return false;        }    };    //地图截屏回调    BaiduMap.SnapshotReadyCallback mSnapshotReadyCallback = new BaiduMap.SnapshotReadyCallback() {        @Override        public void onSnapshotReady(Bitmap bitmap) {            toast("地图截屏回调");        }    };    //触摸地图回调    BaiduMap.OnMapTouchListener mOnMapTouchListener = new BaiduMap.OnMapTouchListener() {        @Override        public void onTouch(MotionEvent motionEvent) {        }    };

>>>>>>>Demo地址<<<<<<<

更多相关文章

  1. Android百度地图开发(五):图层
  2. Android深色模式适配-想法1.0
  3. 通过在xml布局文件中设置android:onClick=""来实现组件单击事件
  4. Android下修改SeekBar样式
  5. Android实现隐藏状态栏和标题栏
  6. Android百度地图相关内容汇总
  7. APIDEMO TABLELAYOUT
  8. APIDEMO TABLELAYOUT
  9. APIDEMO TABLELAYOUT

随机推荐

  1. 2021年Android高级面试题,终局之战
  2. Android:Kotlin详细入门学习指南-类和对象
  3. android 安装 出现Android(安卓)Native D
  4. 2021最新Android中高级开发必知必会面试
  5. WebView中的视频播放
  6. windows环境下生成 Android(安卓)可执行
  7. Android事件分发机制详解:史上最全面、最
  8. Android开发学习笔记(十二) 获取系统可用内
  9. 简单明了的分析Android触摸事件,看完再也
  10. Android(安卓)顶部下拉刷新添加数据&& 底