一个人如何使用资产?我有这个代码:
AssetManager assets = getAssets();
InputStream stream = assets.open( "test.txt" );
看起来它只能在 Activity 类中使用。如果我尝试在另一个类中使用上述代码,我会收到有关 getAssets() 不是我的类的类型的错误。
那么如何在不是 Activity 的类中使用资源呢?
您必须传递要使用活动上下文的类。为了在您的活动中获得正确的上下文,您可以执行以下操作。
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;
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)