字符串用法为TextView ID

时间:2013-10-14 13:10:03

标签: android textview

我想生成一个随机字符串(带有一些规则),而不是将它用作textview id。例如,我想使用带有此字符串的settext。 目的:我应该随机选择一个textview,而不是将其文本设置为另一个。

2 个答案:

答案 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();