gpt4 book ai didi

Android MapView ItemizedOverlay Draw onTap

转载 作者:太空宇宙 更新时间:2023-11-03 11:22:11 25 4
gpt4 key购买 nike

我正在尝试在 ItemizedOverlay 的 Draw 方法中绘制自定义形状。是否可以为绘制的形状获取 onTap 事件。目前 onTap 适用于默认的可绘制对象/标记。如何让它适用于 Draw 方法中绘制的形状?

最佳答案

看起来你可以覆盖逐项叠加的最命中方法。

将方法替换为测试,看看是否击中了你的形状。之后请在此处发布您的解决方案以供其他人使用。

这里是安卓原版

    protected boolean hitTest(OverlayItem item, Drawable marker, int hitX, int hitY) {
Point eventPos = new Point(hitX, hitY);
Point itemHitPosOnDisplay = calculateItemPostionRelativeToDisplay(item.getPoint());
Point distance = Point.substract(eventPos, itemHitPosOnDisplay);
if (marker == null) {
marker = this.defaultMarker;
}
if (Math.abs(distance.x) < marker.getIntrinsicWidth() / 2
&& Math.abs(distance.y) < marker.getIntrinsicHeight() / 2) {
return true;
}
return false;
}

问候, 斯蒂芬

关于Android MapView ItemizedOverlay Draw onTap,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6195295/

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