Android 地图视图自动平移
在我的 Android 应用程序中,我需要执行以下操作:
- 将地图视图固定到特定的第一个位置后,地图无法显示 被用户平移。
- 地图将自动平移到不同的位置,用户点击 不会停止它的运动。
更具体地说,该应用程序是一种简单的游戏,当地图移动到不同位置时,用户必须点击正确的目标来选择它...目标是固定在地图上的一些覆盖物
...最后,我很高兴知道如何使叠加层在地图上从右到左移动,然后回到其主要位置等等。
编辑:
经过一番谷歌搜索后,我想到了这一点: 首先,我需要使视图不对点击(或点击)做出反应,
mapView.setClickable(false);
- 这会影响 Overlays onTap 方法吗?
现在,使用这样的可运行选项调用 animateTo 方法( mIterator 包含一个 GeoPoint 列表)
mapController.animateTo(mIterator.next(), panMap);
panMap 是一个可运行的
private Runnable panMap = new Runnable() {
@Override
public void run() {
if (mIterator.hasNext()) {
mapController.animateTo(mIterator.next(), panMap);
}
}
并且我遇到了另一个问题,动画速度非常快,如果有任何方法可以减慢它请告诉我。
任何帮助将不胜感激。
In my android application i need to do the following :
- after fixing the map view to a specific 1st location, the map can't
be panned by the user. - the map will be auto panned to different locations and the user tap
won't stop its movement.
To be more specific, the application is a kind of a simple game, the user must tap on the right targets to pick it while the map is moving to different location... the targets are some overlays fixed on the map...
One final things, I will be glad to know how to make overlays moving on the map from right to left the back to its primary location and so on.
Edited :
After some googling, I came up to this :
First, I need to make the view not reacting for clicks (or tap)
mapView.setClickable(false);
- Does that affect the Overlays onTap Methode?
Now, calling the animateTo method with the runnable option like this (mIterator contains a List of GeoPoint )
mapController.animateTo(mIterator.next(), panMap);
The panMap is a Runnable
private Runnable panMap = new Runnable() {
@Override
public void run() {
if (mIterator.hasNext()) {
mapController.animateTo(mIterator.next(), panMap);
}
}
And there I came to another problem, the animation goes very fast, if there is any way to slow it please tell me.
Any help will be appreciated.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你可以有一个
Thread.sleep()
run()
中的循环you can have a
Thread.sleep()
in the loop inrun()