您的位置:首页 > 移动开发

Android基于mAppWidget实现手绘地图(九)–如何处理地图对象的touch事件

2015-08-14 15:21 459 查看
为了响应touch事件,需要设置OnMapTouchListener

示例:

private void initMapEventsListener()
{
mapWidget.setOnMapTouchListener(new OnMapTouchListener() {
public void onTouch(MapWidget map, MapTouchedEvent event) {

List objectTouchEvents = event.getTouchedObjectIds();

// X coordinate of the touch in original image coordinates
int mapX = event.getMapX();

// Y coordinate of the touch in original image coordinates

int mapY = event.getMapY();

// X coordinate of the touch in screen coordinates

int screenX = event.getScreenX();

// Y coordinate of the touch in screen coordinates
int screenY = event.getScreenY();

if (objectTouchEvents.size() == 1) {
ObjectTouchEvent objectTouchEvent = objectTouchEvents.get(0);
// Id of the layer that the map object belongs to
long layerId = objectTouchEvent.getLayerId();
// Id of the map object that was touched.

Object objectId = objectTouchEvent.getObjectId();
Toast.makeText(BrowseMapDemoActivity.this, "Touched object " + objectId + " on layer" + layerId + ", x: " + mapX + " y: " + mapY, Toast.LENGTH_SHORT).show();
}
}
});
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: