5

这是示例代码:

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

如何将代码更改为不使用SomeClass( in new Intent(SomeClass.this, ...))?我想将此示例放在多个类中,并且我不希望每次都使用不同的类名。

4

1 回答 1

3

更短的方法(建议):

SomeClass.this用Intent 替换应该getApplicationContext()可以解决问题。

我使用的方法(有点冗长,可能不是两者中最好的):

在每个类中,制作一个private Context mContext;
然后,在onCreate()每个类中,制作mContext = this;
最后,SomeClass.this在您的 Intent 中替换为mContext

于 2012-07-18T15:38:51.667 回答