我有两个ToggleButtons,我希望能够随机选择其中一个按钮的id,并将该按钮设置为true。我试过这个但是没有用,因为setChecked不适用于Int或String。任何帮助都会得到很多赞赏。
int[] buttonIds = new int[] {R.id.player1Button, R.id.player2Button};
Random rand = new Random();
int num = rand.nextInt(buttonIds.length);
int buttonId = buttonIds[num];
findViewById(buttonId).toString();
String randomButton = getString(buttonId);
randomButton.setChecked(true); /// THIS LINE OF CODE WILL NOT WORK
答案 0 :(得分:2)
请改用此行
((ToggleButton)findViewById(buttonId)).setChecked(true);
答案 1 :(得分:0)
你最后有点困惑。您选择随机id
的代码很好。但是ToggleButton
是一个类。它不是String
。如果您通过String
将其转换为toString()
,则它将不具有任何toggleButton
个功能。相反,您希望findViewById
获取ID,将其转换为ToggleButton
并在setChecked
上调用ToggleButton
。