В моем приложении я хочу, чтобы случайная кнопка исчезала каждую секунду.Disappear buttons in android
Мое состояние теперь в том, что у меня отсчет времени от 30 секунд до 0. Каждый раз, когда я нажимаю кнопку, он исчезает, а другой отображается. Теперь я хочу автоматизировать, что каждую секунду случайная кнопка ушла, а другая показана. Вот мой код до сих пор:
методtv = (TextView) findViewById(R.id.tv);
new CountDownTimer(30000, 1000) {
public void onTick(long millisUntilFinished) {
tv.setText("F " + millisUntilFinished/1000);
System.out.println("HHH");
}
public void onFinish() {
tv.setText("done!");
Toast t = Toast.makeText(MainActivity.this, "Ihr Highscore: " + count, Toast.LENGTH_LONG);
t.show();
}
}.start();
setNextButton называется каждый раз, когда пользователь нажимает кнопку, что я хочу сейчас, что называется каждый второй автоматически:
public void setNextButton(Button str){
System.out.println("&&&&&&&&&&& SETNEXTBUTTON");
str.setVisibility(ImageButton.GONE);
int zufall = (int) (Math.random()*23);
int buttonid = str.getId();
int buttonname = (int) str.getId();
String buttonneu = "button" + zufall;
System.out.println("&&&&&&&&&&&" + getResources().getResourceEntryName(buttonid));
int[] buttonIds = {R.id.button1, R.id.button2, R.id.button3, R.id.button4, R.id.button5, R.id.button6, R.id.button7, R.id.button8,
R.id.button9, R.id.button10, R.id.button11, R.id.button12, R.id.button13, R.id.button14, R.id.button15, R.id.button16 ,
R.id.button17, R.id.button18, R.id.button19, R.id.button20, R.id.button21, R.id.button22, R.id.button23, R.id.button24 };
Button bnew = (Button) findViewById(buttonIds[zufall]);
//Toast.makeText(this, "$ " + getResources().getResourceEntryName(bnew.getId()), Toast.LENGTH_LONG).show();
if(bnew.getId() == str.getId()){
bnew = (Button) findViewById(buttonIds[zufall]);
}
bnew.setVisibility(ImageButton.VISIBLE);
count++;
//b.setEnabled(enabled)
}
Как я могу решить эта проблема в хорошем смысле?
Спасибо, хорошо выглядит. Просто еще один короткий вопрос: у меня есть кнопка 26, одна видна, другие установлены в GONE. Как я могу получить тот, который виден? – user896692
Вы можете перебирать все кнопки и видеть, какая из них имеет видимость, установленную в VISIBLE –
, или вы можете сохранить идентификатор кнопки, которая видна. 'private integer id_button;' создавать геттеры и сеттеры, а затем 'setIdButton (buttonIds [zufall]);' – Dyna