当前位置: 代码迷 >> Android >> android 百度map获取焦点
  详细解决方案

android 百度map获取焦点

热度:27   发布时间:2016-05-01 14:46:30.0
android 百度地图获取焦点
大家好,现在遇到一问题,就是
调用百度地图移动API,添加覆盖物图层,然后将一些兴趣点标注在覆盖图层上
然后我通过菜单,点击hospital_menu菜单,根据item.isChecked()来选择显示覆盖图层或者移除覆盖图层
但是,
问题在这:
当我点击hospital_menu菜单,进行移除或者显示操作,地图没有移除或者显示覆盖图层,我必须在地图上再进行一次点击,它才能移除或者显示覆盖图层。
疑问:我开始认为是地图没有获取到焦点,然后我mMapView.requestFocusFromTouch()获取了焦点,但是依然没效果。
  或许我的思路是错误的。
问:我如何设置才能当我点击菜单后,立即能在地图上显示或者移除覆盖图层???


case R.id.hospital_menu: //图层子菜单-医院菜单

if(item.isChecked()){
item.setChecked(false);
mapOverlays.remove(overlay);
}
else
{
item.setChecked(true);
mapOverlays.add(overlay);
}
mMapView.requestFocusFromTouch();
break;

------解决方案--------------------
会不会是remove overlay后MapView没有重绘呢?
mapOverlays.remove(overlay);之后mMapView.invalidate()强制它重绘一下行不行呢?
  相关解决方案