2013-10-14 30 views
0

我想生成一個隨機字符串(有一些規則),比使用它作爲textview id。例如,我想用這個字符串使用settext。 目的:我應該隨機選擇一個文本視圖,而不是將其文本設置爲另一個文本視圖。字符串用法TextView ID

回答

0

其實,有不同的方式來達到這個目的。例如,你可以有一個可以隨機選擇的文本數組。

String[] strArr = { "text1", "text2", "text3" }; 
Random rand = new Random(); 
int selected = rand.nextInt(3); 
textView.setText(strArr[selected]); 

如果MUST從其他textviews字符串,那麼你可以創建一個ID數組,而不是文本的數組。然後使用隨機對象獲得一個ID,然後類似:

TextView textToGetString = (TextView) findViewById(idArray[selected]); 
String newText = textToGetString.getText(); 
0

你的思維過程似乎有點複雜,但可能有一個更簡單的解決方案。實際上,Android僅將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"); 

我希望這有助於!祝你好運