如何从不使用外部类名的内部类中获取外部类的引用?

时间:2012-07-18 15:38:14

标签: java android

以下是示例代码:

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, ...)中)? 我想将这个示例放在多个类中,我不希望每次都使用不同的类名。

1 个答案:

答案 0 :(得分:3)

更短的方法(建议):

SomeClass.this替换你的意图中的getApplicationContext()应该可以解决问题。

我使用的方法(稍微抽出一些,可能不是两者中最好的):

在每节课中,制作一个private Context mContext;
然后,在每个班级的onCreate()中,制作mContext = this;
最后,将您的意图中的SomeClass.this替换为mContext