从资源android中随机化字符串

时间:2013-03-20 07:22:37

标签: android string random

我试过这个:

   int[] trivias = {
        R.string.trivia1, R.string.trivia2, R.string.trivia3, R.string.trivia4, R.string.trivia5,
        R.string.trivia6, R.string.trivia7, R.string.trivia8, R.string.trivia9, R.string.trivia10,
        R.string.trivia11, R.string.trivia12, R.string.trivia13, R.string.trivia14, R.string.trivia15,
        R.string.trivia16, R.string.trivia17, R.string.trivia18, R.string.trivia19, R.string.trivia20,
        R.string.trivia21, R.string.trivia22, R.string.trivia23, R.string.trivia24, R.string.trivia25,
        R.string.trivia26, R.string.trivia27, R.string.trivia28, R.string.trivia29, R.string.trivia30,
        R.string.trivia31, R.string.trivia32, R.string.trivia33, R.string.trivia34, R.string.trivia35,
        R.string.trivia36, R.string.trivia37, R.string.trivia38, R.string.trivia39, R.string.trivia40,
        R.string.trivia41, R.string.trivia42, R.string.trivia43, R.string.trivia44, R.string.trivia45,
        R.string.trivia46, R.string.trivia47, R.string.trivia48, R.string.trivia49, R.string.trivia50,
};

TextView tv;

@Override
protected void onCreate(Bundle savedInstanceState) {
    // TODO Auto-generated method stub
    super.onCreate(savedInstanceState);
    setContentView(R.layout.trivias);

    tv = (TextView) findViewById (R.id.tvTrivias);

    Random ran = new Random();


    tv.setText(ran.nextInt(trivias.length));



}

但是logcat给了我ResourcesNotFound异常。我在这里错过了什么?感谢。

2 个答案:

答案 0 :(得分:2)

这可能是......

tv.setText(trivias[ran.nextInt(trivias.length)]);

您现在正在做的是搜索带有id的资源,这是由 ran.nextInt()

生成的

答案 1 :(得分:0)

你没有传递int trivias: -

tv.setText(trivias[ran.nextInt(trivias.length)]);

你刚忘了 trivias []