活动以外的资产

时间:2011-08-04 23:12:03

标签: android android-activity assets android-context

我需要从类中打开广告资源文件,不同的是活动。 我想我可以通过参数将主要上下文(或活动)传递给这个类,但我想知道是否有更简单的方法。

2 个答案:

答案 0 :(得分:1)

将Activity的Context传递给离散类是我定期做的事情。我通常将它传递给构造函数并将其存储为实例变量...

public MyClass {

    private Context parentContext = null;

    public MyClass(Context context) {

        parentContext = context;

    }
}

从Activity中实例化类时,我只是将this传递给构造函数的context参数。

答案 1 :(得分:0)

如果类是对话框或视图子类 - 您可以从中调用getContext()。否则,你必须以某种方式传递Context,无论是作为参数还是作为类变量,初始化duting contruction。在后一种情况下,有时从ContextWrapper派生你的类是有意义的。