我正试图用三指手势而不是一个手指移动地图。 如果我在主活动中执行scrollBy()或setMapCenter(),事情似乎按预期工作。 但是,如果我在我的ACTION_MOVE中进行这些调用,它们似乎没有任何效果。 发布也不是很有效。
还有另一个问题 - event.getX / Y()是浮点数,mapController.scrollBy()占用整数 - 因为以正常速度实时拖动似乎需要sub-int解析,从而实现实时更新很难做到。
看起来很奇怪mapView上的哪些方法以及mapController上的哪些方法。
UPDATE :在事件处理程序中执行时,scrollBy()将移动任何叠加层,但不移动基础地图
所以基本上我希望能够“返回true”形式ACTION_MOVE,所以我的代码而不是基本代码处理地图通过用户手势跟踪
答案 0 :(得分:0)
您可能需要稍微延迟,
类似的东西:
Handler handler = new Handler();
// Method Block
{
handler.postDelayed(new Runnable()
{
// Code etc
}, 500);
}
// End code block
当我玩地图时,在地图停止触摸后必须触发分配控制器动作..(我知道这听起来很痛苦)。
我已经写了很多地图库的东西(Android Map Library),知道你的意思似乎什么都没发生。或者地图似乎忽略了输入,我管理它的唯一方法是延迟控制器命令。
让我知道你的想法,我可以帮助你。
干杯, 克里斯