作者:程溯
在移动GIS应用采集中对数据进行采集编辑添加属性值操作。
数据编辑主要包括图形的编辑与属性的编辑:可以绘制新的GeoPoint、GeoLine、GeoRegion对象添加其属性,也可选择已有对象,编辑其属性,或者删除选中对象。
主要介绍用到的俩个地图控件监听GeometryAddedListener和GeometrySelectedListener的用法。
GeometryAddedListener接口:用于接收添加几何对象事件(GeometryEvent)的监听器。
类 GeometryEvent:指示几何对象编辑的事件。几何对象编辑事件包括:GeometryDeleting,GeometryAdded,GeometryModifying 和 GeometryModified。当几何对象被编辑时触发该事件。
GeometrySelectedListener接口:用于接收选中几何对象事件(GeometrySelectedEvent)的监听器。
类 GeometrySelectedEvent:指示几何对象被选中的事件。 当地图窗口中的几何对象被选中后触发该事件。该事件只在 UI 操作(如鼠标操作)或模拟 UI 操作(如 Map 的 DoMouseDown 方法等)时触发,使用代码操作 Selecttion 将不会触发该事件。
接收添加几何对象事件及选中几何对象事件:
@Override
public void geometrySelected(GeometrySelectedEvent arg0) {
// TODO Auto-generated method stub
layer = arg0.getLayer();
curEvent1 = arg0.getGeometryID();
mapControl.appointEditGeometry(curEvent1, layer);
}
@Override
public void geometryAdded(GeometryEvent arg0) {
if (mapControl.getCurrentGeometry() != null) {
curEvent = arg0.getID();
Intent intent = new Intent(getBaseContext(), InfoWnd.class);
startActivityForResult(intent, REQUEST_INFO);
mapControl.setA