为这个糟糕的标题道歉,但我想不出更好的了。我的strings。xml文件中有很多字符串数组。我希望能够通过传递我的意图资源id(例如r.a ray.mystringarray)作为一个字符串来引用这个,然后在我的类中使用这个字符串来获取我的string[]。以下是我到目前为止所做的尝试,以便让您更好地了解我正在尝试的内容
Intent intent = new Intent(Main.this, Categories.class);
intent.putExtra("category", "R.array.Categories");
startActivity(intent);
然后在category .class中:
myArrayID = (String) bundle.get("category");
myArray = getResources().getStringArray(myArrayID)));
我的方法可行吗?还是我忽略了另一种方式。第一个应用程序还在学习
编辑-对不起,我的头炸了今晚,我完全混淆了自己在这里。我已经重写了问题-转换" id. myid "从一个字符串到int值R.id.myID?
不知道为什么要这样做,但是你可以直接传递int ID:
Intent intent = new Intent(Main.this, Categories.class);
intent.putExtra("category", R.array.Categories); //R.array.Categories is an int value
startActivity(intent);
然后. .
int myArrayID = bundle.getIntExtra("category", 0);
myArray = getResources().getStringArray(myArrayID)));
在category .class中试试
String myArrayID[];
myArrayId=bundle.getStringArray("category");
不是一个很好的答案,但这是正确的:参见getStringArray。你会想要正确的转换它,但除此之外你得到了正确的。