android – getAssets();从另一个班

我有一个简单的读取txt文件的功能。

AssetManager mngr = getAssets();
InputStream is = mngr.open("textdb.txt");

它从我的主要活动。但是如果我在一个单独的类中使用相同的代码,getAssets()只返回null / crash。

我无法找到为什么它只适用于主课。

有任何想法吗?

解:

subClass.ReadSettings(getApplicationContext());

public String[] ReadSettings(Context myContext) {
}
你的其他班还是活动吗?
getAssets()是Context的一种方法。如果你的类不是一个活动,你需要传递一个上下文,然后调用getAssets。

像这样:

public myClass(Context myContext) {
    AssetManager mngr = myContext.getAssets();
    InputStream is = mngr.open("textdb.txt");
}
http://stackoverflow.com/questions/8458433/getassets-from-another-class

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:android – getAssets();从另一个班