2

嗨,我正在开发一个应用程序,我在其中更新 Google 地图上的标记,然后将他移向各种地理点。

我每 10 毫秒将标记移动几米,以在地图上实现平稳移动。

我正在使用倒数计时器来执行此操作(例如,每 10 毫秒将标记移动几米)但您知道它并不精确。

我还能用什么来循环一个动作并且我可以更精确?

我要不要用System.nanotime();

如果这是最好的方法,我可以举个例子吗?

4

2 回答 2

2

试试 TimerTask 和 Timer

Timer timer = new Timer();
TimerTask task = new TimerTask() {
    @Override
    public void run() {
        // YOUR CODE HERE
    }
};

timer.scheduleAtFixedRate(task, 0, 10000);

希望,对你有帮助!

于 2012-02-02T09:16:35.080 回答
0

我认为问题不仅在于时间,而且每个 UI 更新的 android 主线程都在循环,而不仅仅是您的应用程序的更新。我建议使用有足够时间的单独线程将更新发布到主线程。

于 2012-02-02T09:17:12.053 回答