安卓 日常问题 工作日志21

mainActivity

控制器 的 问题 应该学习  这个让我想到了 spring mvc 的 控制器 以及结构 

在osmdrodi的画图 划线的问题 

首先 是两个图层 

划线 一个图层 保存好 隐藏画的线 

然后 回显 是在一个新的 overlay 在这里面 回显 

actovity的流程是 

MainActivity—(发送命令添加一条线)———>mapView——(接受并使用controller的方法)——>MeasureController——(向相应的overlay进行操作)——>overlay(执行命令进行添加或删除)   overlay中 有add()方法 通过这个方法 把创建的线数据 添加到overlay中   其中·add()方法是继承自FolderOverlay的方法 

 就是这个顺序  添加测量线为例子

因为 是两个不同的线 这里为了方便比较 名为 刚画的线 和 回显线 

this.mapView.getOverlays().remove(measureDistance);//移除
this.measureDistance.onDetach(this.mapView);//消除
this.measureDistance = null;//变量指向空
this.mapView.getOverlays().remove(measureDistanceLinelist);//移除
this.measureDistanceLinelist.onDetach(this.mapView);//消除
this.measureDistanceLinelist = null;//变量指向空

两种线的删除方式 

切记 关于 overlay得显示隐藏方法

 mMapView.getMeasureController().reset(mSession,currentProject); //将 所有的 线 都加载到 folderOverlay中 但是 当setEnabled(false) 不显示  感觉 多余的 功能
mMapView.getMeasureController().getMeasureDistanceLinelistOverlay().setEnabled(true); //改为展示 ok 可以使用 没问题了 全部展示
这种是成对出现的
只有当前面 向overlay中 添加了
后面才能进行 显示或隐藏

原文地址:https://www.cnblogs.com/dushutai/p/12660282.html