gpt4 book ai didi

android - Nutiteq MapView 对长按没有反应

转载 作者:行者123 更新时间:2023-11-30 02:48:18 25 4
gpt4 key购买 nike

我已经为 Nutiteq 中的 PolygonsMarkers 实现了我自己的自定义 MapListener 并且我可以显示 Toasts 并更改元素的颜色和其他内容,但如果我在标记或多边形上长时间单击,听众不会使用react。

我已经在我的 customListener 之外尝试使用 RegisterContextMenu、ContextMenuListener 等,结果是一样的,但它不起作用。

如果我长时间点击一个元素(标记/多边形),我的 Intent 是显示一个 ContextMenu

代码如下

我已经正确地覆盖了方法

public class MyFieldEventListener extends MapListener {
private GeometryLayer layer;
private Marker clickMarker;
private MapView mapView;
private Activity activity;


public MyFieldEventListener(Activity activity, MapView mapView, GeometryLayer layer, Marker clickMarker) {
this.layer = layer;
this.clickMarker = clickMarker;
this.mapView = mapView;
this.activity = activity;

// I have also tried with this line commented and it's the same
mapView.setLongClickable(true);

// here I register my ContextMenu
activity.registerForContextMenu(mapView);

// Here I define my ContextMenuListener and create a ContextMenu
mapView.setOnCreateContextMenuListener( new View.OnCreateContextMenuListener() {

@Override
public void onCreateContextMenu(ContextMenu menu, View v, ContextMenuInfo menuInfo) {
Log.i("TAG", "WmsMapActivity:: setOnCreateContextMenuListener.onCreateContextMenu");
menu.setHeaderTitle("Notes");

menu.add(0, 1, 0, "Write Text Note");
}
} );
}

@Override
public void onLabelClicked(VectorElement vectorElement, boolean longClick) {
if (vectorElement.getLabel() != null) {
if ( longClick )
mapView.showContextMenu();
else { // Another Stuff... }
}

@Override
public void onVectorElementClicked(VectorElement vectorElement, double x, double y, boolean longClick) {
if (vectorElement.getLabel() != null) {
if (longclick)
mapView.showContextMenu();
else { // Another Stuff... }
}
}
...
}

我会感谢你的每一条评论、建议等

亲切的问候

最佳答案

也许您通过在代码中的某处调用 mapView.getOptions().setClickTypeDetection(false) 来禁用点击检测?其他选项不应干扰点击检测。

如果不是这种情况,我建议您尝试 Hellomap3D 示例 - 当显示的标记被单击时,它应该显示 toast ,并指示它是正常单击还是“长”单击。它适用于我的手机。

关于android - Nutiteq MapView 对长按没有反应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24632263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com