首页 / 浏览问题 / 移动GIS / 问题详情
GeoText显示在跟踪层怎么设置点击事件
8EXP 2017年09月13日

代码大概是这样:

打开地图:

mapControl.getMap().getLayers().add(ds.getDatasets().get(0), true);
mapControl.getMap().getLayers().get(0).setEditable(true);
mapControl.setAction(Action.SELECT);
mapControl.getMap().setScale(1/100000);
mapControl.setMapParamChangedListener(mapParameterChangedListener);
mapControl.addGeometrySelectedListener(this);
mapControl.addGeometryAddedListener(this);
mapControl.getMap().refresh();

查询数据后创建GeoText显示在跟踪层:

Point2D pt = featureSet.getGeometry().getInnerPoint();
TextPart part = new TextPart();
part.setAnchorPoint(pt);
part.setText(mStake);
GeoText text = new GeoText(part);
mTrackingLayer.add(text,"text");
part.dispose();
text.dispose();

为什么点击了对应得GeoText,不能回调

geometrySelected这个方法,求救!!!!!

1个回答

(1)跟踪图层不支持对象选择监听;

(2)可以用mapcontrol下的手势监听方法,并用trackinglayer.hitTestEx()获取到点中对象的id,然后通过id得到对应的对象;

(3)获取选中对象的属性信息,并显示在气泡中。
2,042EXP 2017年09月15日
...