0

我有一个活动,它使用位置侦听器中 onLocationChanged 中的代码结果更新显示。一切正常,但我想在一段时间后退出另一个活动。

我尝试插入我在菜单中使用的相同代码来切换位置侦听器中的活动,但它不起作用。我得到一个错误。

    if (dTime < -30){
      Intent target1 = new Intent(this, Waypoint2.class);
      startActivity(target1);
    }

有谁知道如何做到这一点。谷歌和 stackoverflow 的搜索都是空的。

更新:

这个问题似乎是 Jeet 解决的问题和我离开位置经理中途任务的事实的结合。终点(); 语句将执行停止代码并将代码更改为此也有效,并且对于遇到此问题的任何人来说都更清楚。

            if (dTime < -30){
                //finish();
                if(lm != null) {
                    lm.removeUpdates(ll);
                }
                ll = null;
                lm = null;
                Intent target = new Intent(Start2.this, Waypoint2.class);
                startActivity(target);
            }

//finish(); 之间的代码 Intent 是 onStop 部分中的内容。

4

1 回答 1

0

错误可能是,方法 Intent(LocationListener, Class) 未定义,因此您需要将其替换为:

Intent target1 = new Intent(context, Waypoint2.class);

其中 context 是 Activity 的上下文,您可以通过显式传入 Constructor 或 YourActivityName.this 来获取 Activity 的 Context,如果 LocationListener 与您的活动在同一个文件中实现。

于 2012-08-31T04:25:07.960 回答