我使用osmbonuspack_v5.1来处理我的OpenStreet地图视图和地图上的长按事件。现在,当有一个长按事件时,我需要打开一个上下文菜单。由于添加了overlays,映射视图无法获取事件,因此registerForContextMenu (View view)不起作用。我想知道在osmbonuspack中是否已经有一些实现来弹出上下文菜单。
到目前为止我的代码。
@Override
public boolean longPressHelper(GeoPoint geoPoint) {
// show the menu here to send event
latitude = Double.toString(geoPoint.getLatitude());
longitude = Double.toString(geoPoint.getLongitude());
// ServiceAdapter.publishGlobal(TOPIC_NAME, EVENT_NAME, latitude + longitude);
Intent listViewIntent = new Intent(this, ListViewActivity.class);
startActivity(listViewIntent);
mapView.invalidate();
// Toast.makeText(this, "Event at (" + latitude + " , " + longitude + ")", Toast.LENGTH_SHORT).show();
return true;
}正如您所看到的,我正在手动尝试在长按下调出一个列表视图活动。如果没有默认的实现,那可能就是我要做的。
发布于 2015-11-15 01:52:55
“我想知道osmbonuspack中是否已经实现了弹出上下文菜单。”
=>是,在OSMNavigator MapActivity中。
有两个技巧可以避开(挂钩菜单,传递按下的geoPoint ),看看源代码中的注释。
https://stackoverflow.com/questions/33686949
复制相似问题