我想在我的res上的xml中存储类列表,因此我可以仅使用索引就可以在全局范围内使用它。
<resources>
<array name="array_class">
<class>Dashboard.class</class>
</array>
</resources>
我的活动
int index = x; // i get the the index from database
TypedArray arrayClass = getActivity().getResources()
.(R.array.array_class);
Class myClass = (Class) arrayClass.getString(index);
这使我出错,无法将String强制转换为Class。 是的,我知道,我不能那样做。那么如何在res上存储类数组的正确方法呢?或任何其他方法来全局调用Class []值?
答案 0 :(得分:0)
在您的资源文件中,存储所有类的全名,包括包名
try {
int index = x; // i get the the index from database
TypedArray arrayClass = getActivity().getResources().(R.array.array_class);
Class<?> act = Class.forName(arrayClass.getString(index));
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
然后在Java代码中,您可以通过以下方法进行检索
STUFF
希望有帮助