我正在尝试在 ItemizedOverlay 的 Draw 方法中绘制自定义形状。是否可以为绘制的形状获取 onTap 事件。目前 onTap 适用于默认的可绘制/标记。如何使它适用于在 Draw 方法中绘制的形状?
问问题
940 次
1 回答
0
看起来您可以从逐项叠加中覆盖 hittest 方法。
用测试替换该方法,看看你是否击中了你的形状。之后请在此处为其他人发布您的解决方案。
这是原始的android版本
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;
}
问候, 斯蒂芬
于 2011-06-01T02:54:18.557 回答