我想生成一个随机字符串(带有一些规则),而不是将它用作textview id。例如,我想使用带有此字符串的settext。 目的:我应该随机选择一个textview,而不是将其文本设置为另一个。
答案 0 :(得分:0)
您的思考过程似乎有点复杂,但可能有一个更简单的解决方案。 Ids实际上只被Android用作整数的占位符。您可以使用要使用的所有ID填充整数数组,然后从该数组中随机选择一个,而不是随机生成id的占位符。您的活动中的实施可能如下:
Random rand = new Random();
int[] myTextViews = new int[]{R.id.textView1, R.id.textView2, R.id.textView3}
int length = myTextViews.length;
TextView tV = (TextView)findViewById(myTextViews[rand.nextInt() % length]);
tV.setText("Whatever Text You Want");
我希望这有帮助!祝你好运
答案 1 :(得分:0)
实际上,有不同种类的方法可以达到这个目的。例如,您可以随机选择一组文本。
String[] strArr = { "text1", "text2", "text3" };
Random rand = new Random();
int selected = rand.nextInt(3);
textView.setText(strArr[selected]);
如果你必须从其他文本视图中获取字符串,那么你可以创建一个ID数组而不是一个文本数组。然后使用 Random 对象获取ID,然后使用以下内容:
TextView textToGetString = (TextView) findViewById(idArray[selected]);
String newText = textToGetString.getText();