关于fragment切换后,高德地图无法定位的解决方法
来源:互联网 发布:redis同步到mysql 编辑:程序博客网 时间:2024/09/21 09:00
本例子主要解决,多个fragment在调用高德API时,进行切换后,第二次进入fragment,fragment将无法正常完成定位。博客上看到很多朋友也遇到了这样的问题,今天解决了分享一下方案。
问题描述:
Fragment嵌套高德地图,当再次进入Fragment的时候,会出现奇怪的现象。嵌套的地图会出现无法定位的现象。这个问题出现的原因在于,fragment在被移除时,不会执行onDestroy()方法,而是执行onDestroyView()方法。fragment中的数据已经在第一次操作时完成了初始化了,所以以下代码中,aMap不为null。故无法正常开启定位功能。
依据demo源代码:
private void init() { if (aMap == null) { aMap = mapView.getMap(); setUpMap(); } }
改成:
private void init() { if (aMap == null) { aMap = mapView.getMap(); setUpMap(); }else{ aMap.clear(); aMap.setLocationSource(this);// amap.getUiSettings().setMyLocationButtonEnabled(false);// amap.getUiSettings().setZoomControlsEnabled(false); aMap.setMyLocationEnabled(true); aMap = mapView.getMap(); setUpMap(); } }对定位服务进行重新开启,即可。
这是本人现在使用的方法,欢迎提出更完美的方法,可以直接重启定位服务。
1 0
- 关于fragment切换后,高德地图无法定位的解决方法
- 关于高德地图在fragment中出现切换后只有基本地图服务的解决案列
- 高德地图无法定位
- 关于高德地图的城市定位
- Android 解决高德地图签名后无法定位的问题
- 关于华为手机使用高德地图无法定位的问题
- 高德地图Fragment切换出现黑屏
- iOS8 高德地图SDK MAMapView无法定位的问题
- iOS8 高德地图SDK MAMapView无法定位的问题
- iOS8 高德地图SDK MAMapView无法定位的问题
- iOS 使用高德地图 MAMapView 无法定位的问题
- iOS8 高德地图SDK MAMapView无法定位的问题
- 使用高德地图API无法定位
- 关于android高德地图地图无法显示的问题
- Android简单实现 高德地图的定位与显示,点击按钮切换地图图层
- 高德地图的定位
- 关于高德地图定位跑到非洲的情况。
- fragment二次加载地图地图无法定位
- Dubbo+Zookeeper+SpringMVC 架构
- Android Studio的汉化
- 各种泛洪攻击
- Java构造函数
- PAT (Advanced Level) Practise —1001:A+B format
- 关于fragment切换后,高德地图无法定位的解决方法
- Quartz2D简单使用(二)
- C语言交换变量之临时变量使用指针
- 【C#】 调用web api
- Transact-SQL简介
- AVL Tree 的实现
- iOS Cocopods的安装和导入第三方
- 关于双控阵列的实现原理的讨论
- jQuery操作checkbox选择