5

サンプルコードは次のとおりです。

Class SomeClass extends Activity {
    public void someMethod() {
        Runnable r = new Runnable() {
            public void run() {
                Intent service = new Intent(SomeClass.this, SomeOtherClass.class);
                // ...
            }
        }
    }
}

SomeClass( で)を使用しないようにコードを変更するにはどうすればよいnew Intent(SomeClass.this, ...)ですか? このサンプルを複数のクラスに配置したいのですが、毎回異なるクラス名を使用したくありません。

4

1 に答える 1

3

より短い方法 (推奨):

SomeClass.thisIntent を に置き換えるとgetApplicationContext()うまくいくはずです。

私が使用する方法(もう少し引き出され、おそらく2つの中で最善ではありません):

各クラスで を作成し、private Context mContext;
onCreate()クラスの で を作成mContext = this;
最後に、SomeClass.thisインテントを に置き換えますmContext

于 2012-07-18T15:38:51.667 に答える