Страница 1 из 1
Как зациклить смену TextView по клику на кнопку?
Добавлено: 06 фев 2014, 18:38
salexus
Не могу понять как сделать чтобы по клику на кнопку, менялось содержимое TextView в цикле. В моем коде при первом клике сразу выдает 777. Как заставить его начинать с 0.
private void LoadText()
{
String mass[] = new String[3];
mass[0]= "55";
mass[1]= "55555";
mass[2]= "777";
for (int i = 0; i<3; i++ ){
textViewStr1.setText(mass);
}
}
@Override
public void onClick(View v) {
LoadText();
}
Re: Подскажите новичку
Добавлено: 06 фев 2014, 18:52
altwin
ваша переменная цикла i -должна быть static и объявленна вне цикла, чтобы сохранять свое состояние, после первой итерации просто прерываете цикл и должно получиться, что при каждом нажатии кнопки - будет слудующее значение, т.е. второй раз i == 1 и т.д. Если это нужно делать без нажатий на кнопку, делайте паузу в цикле перед новой итерацией, но это все в теории. А вообще - просто не надо так делать.
Re: Подскажите новичку
Добавлено: 06 фев 2014, 18:56
anber
Re: Подскажите новичку
Добавлено: 06 фев 2014, 19:03
salexus
Спасибо за быстрый ответ. А как тогда лучше делать? В общем приложение представляет собой: Задание вопроса, получение ответа. Вопросы должны задаваться по очереди. В консольном приложении Java это сделал через цикл. Получил вопрос, вбил ответ, получил следующий ответ. А вот как на андроид это переделать пока не понимаю.
Re: Как зациклить смену TextView по клику на кнопку?
Добавлено: 06 фев 2014, 19:09
anber
Код: Выделить всё
private int questionNumber = 0;
private String mass[];
private void setNextQuestion() {
if (questionNumber < mass.length)
textViewStr1.setText(mass[questionNumber]);
questionNumber++;
}
@Override
public void onClick(View v) {
setNextQuestion();
}
Задать значения в mass лучше в onCreate() или чем-то подобном.
UPD. Исправил опечатку в коде
Re: Как зациклить смену TextView по клику на кнопку?
Добавлено: 06 фев 2014, 19:13
salexus
Огромное спасибо. Пол дня мучаюсь.