如何在Android中使用资产

时间:2010-11-12 07:54:47

标签: java android assets

如何使用资产?我有这段代码:

AssetManager assets = getAssets();
InputStream stream = assets.open( "test.txt" );

它只能在Activity类中使用它。如果我尝试在另一个类中使用上面的代码,我会得到一个关于getAssets()的错误,不是我班级的类型。

那么如何在不属于Activity的类中使用资产呢?

1 个答案:

答案 0 :(得分:2)

您必须通过该课程才能使用您的活动的上下文。要在您的活动中获得正确的上下文,您可以执行以下操作。

private Context ctx = null;

public void onCreate(Bundle bundle) {
    super.onCreate(bundle);
    // your other code
    ctx = getApplication();

    MyClass myClass = new MyClass(ctx);
}

MyClass是你正在谈论的课程。在您的类中,您必须在类构造函数中处理上下文。

class MyClass {
    Context ctx = null;

    public MyClass(Context ctx) {
        this.ctx = ctx;
    }
}