我使用地图伪造0.5.1库(API参考)我遵循所有官方说明,但我有以下问题:
我已经连接了
上的onTouchListener(org.mapsforge.map.android.view.mapview)mapview
但是,当我尝试调用方法mapView.getProctivection()时,我会收到错误"无法解析方法getProctoction()。即使在许多在线示例中调用该方法,也没有官方API参考或MapView.Class。org.mapsforge.map.android.view.mapview
org.mapsforge.map.android.view.MapView mapView;
mapView.setOnTouchListener(new View.OnTouchListener(){
@Override
public boolean onTouch(View v, MotionEvent ev) {
int actionType = ev.getAction();
switch (actionType) {
case MotionEvent.ACTION_DOWN:
return false;
case MotionEvent.ACTION_UP:
mapView.getProjection(); // the error is here
return true;
case MotionEvent.ACTION_MOVE:
return false;
}
return false;
}
});
使用mapsforge lib,还有其他方法来获得点击点的纬度和经度吗?难道我做错了什么?如果在水龙头后没有办法获得坐标,那么我认为库缺少一些非常重要的东西。
谢谢
使用
new MapViewProjection(mapView).fromPixels(double x, double y);
他们在0.4或SO-SO-SO-SO-SO-NOR中反转了链接,而不是从MapView获取投影,而是将MapView传递给投影。
您确定导入正确的MapView吗?有一个Google版本的MapView没有该功能,如果您导入它可能认为它是错误的类。
您可以使用TileRendererLayer
中的onTap
事件,因此您不需要处理``view.tive.ontouch事件,'view.ontouch事件,这在识别单个点击/点击<<<<<<<。/p>
// tile renderer layer using internal render theme
MapDataStore mapDataStore = new MapFile(filename);
TileRendererLayer tileRendererLayer =
new TileRendererLayer(tileCache,
mapDataStore,
this.mapView.getModel().mapViewPosition,
AndroidGraphicFactory.INSTANCE) {
@Override
public boolean onTap(LatLong tapLatLong, Point layerXY, Point tapXY) {
ShowTapLocation(tapLatLong);
return true;
}
};