0

ロケーションリスナーの onLocationChanged のコードの結果で表示を更新するアクティビティがあります。すべて正常に動作しますが、一定時間後に別のアクティビティに戻りたいです。

ロケーションリスナーでアクティビティを切り替えるためにメニューで使用するのと同じコードを挿入しようとしましたが、うまくいきません。エラーが発生します。

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

誰でもこれを行う方法を知っていますか。Google と 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(); の間のコード 意図は onStop セクションにあるものです。

4

1 に答える 1

0

エラーの可能性があります。メソッド Intent(LocationListener, Class) は定義されていないため、次のように置き換える必要があります。

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

context は Activity の Context です。明示的に Constructor を渡すか、または YourActivityName.this (LocationListener がアクティビティと同じファイルに実装されている場合) を渡すことで、Activity の Context を取得できます。

于 2012-08-31T04:25:07.960 に答える