您可以使用您所说的xml方法随机。像这样的东西:
假设您有 1 个字符串数组,其中包含 8 个单词(1 个正确和 7 个受限),您可以拥有尽可能多的具有不同名称的数组。它们保存在 string.xml
现在在 java 中创建Random并检查你得到的数字,然后如果你得到 x 数字打开 x 字符串数组。
这是一个例子:
<string-array name="a">
<item>A</item>
<item>B</item>
<item>C</item>
<item>D</item>
<item>E</item>
<item>F</item>
<item>G</item>
<item>H</item>
</string-array>
现在在java中:
Random r = new Random();
int i1 = r.nextInt(max - min + 1) + min;
然后检查您的号码:
if (i1 == 0){
//do your magic code here with string-array a
} else ...
或使用您喜欢的任何方法,例如switch...
编辑:或者一个技巧可以使字符串数组的名称为a#(诅咒#是一个数字)然后执行:
array = getResources().getStringArray(R.array.a+i1);
使用这种方法,您不需要使用if elseorswitch或任何您想要使用的东西。
注意:这段代码是我的想法,所以它可能有一些写作错误。