Так что я хочу, чтобы определенное действие выполнялось X раз, в зависимости от того, сколько раз пользователь хочет его. Выбор пользователя будет выбран из TextView строки, который устанавливается с этим кодом:Повторите определенное действие X раз в Android
homeScreenPlus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
dodajInterval();
homeScreenMinus.setEnabled(counter > 0);
}
});
homeScreenMinus.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
oduzmiInterval();
homeScreenMinus.setEnabled(counter > 0);
}
});
}
private void oduzmiInterval() {
counter--;
brojIntervala.setText(Integer.toString(counter));
}
private void dodajInterval() {
counter++;
brojIntervala.setText(Integer.toString(counter));
}
Те две кнопки-существу, что значение приращения или декремент TextView.
Действие Я хочу выполнить раз X это:
public void homeScreenStart(View view) {
linearniLayoutSetup.setVisibility(View.GONE);
new CountDownTimer(seekBarTimerDelay.getProgress() * 1000 + 100, 1000) {
@Override
public void onTick(long millisUntilFinished) {
updateTimer((int) millisUntilFinished/1000);
}
@Override
public void onFinish() {
textViewTimerVrijeme.setText("00:00");
countDownTimerTrci();
karticaTimera.setBackgroundColor(getResources().getColor(R.color.kartica_trci));
textViewTimerTrciHodajBlaBla.setText(getResources().getString(R.string.timer_trci));
}
}.start();
}
private void countDownTimerTrci() {
toolbar.setBackgroundColor(getResources().getColor(R.color.kartica_trci));
new CountDownTimer(seekBarIntervaliVisokogIntenziteta.getProgress() * 1000 + 100, 1000){
@Override
public void onTick(long millisUntilFinished) {
updateTimer((int) millisUntilFinished/1000);
}
@Override
public void onFinish() {
textViewTimerVrijeme.setText("00:00");
karticaTimera.setBackgroundColor(getResources().getColor(R.color.kartica_hodaj));
imageViewTimerSlika.setImageResource(R.drawable.ic_timer_niski_intenzitet);
textViewTimerTrciHodajBlaBla.setText(getResources().getString(R.string.timer_hodaj));
countDownTimerHodaj();
}
}.start();
}
private void countDownTimerHodaj(){
toolbar.setBackgroundColor(getResources().getColor(R.color.kartica_hodaj));
new CountDownTimer(seekBarIntervaliNiskogIntenziteta.getProgress() * 1000 + 100, 1000){
@Override
public void onTick(long millisUntilFinished) {
updateTimer((int) millisUntilFinished/1000);
}
@Override
public void onFinish() {
textViewTimerVrijeme.setText("00:00");
karticaTimera.setBackgroundColor(getResources().getColor(R.color.colorAccent));
textViewTimerTrciHodajBlaBla.setText("Done!");
}
}.start();
}
Так это сочетание 3 seekbars или таймеров, один работает за другим, а затем они должны работать столько раз, сколько пользователь выбирает.
Проблема в том, что я не знаю, как это установить, и мне нужен этот первый блок кода в таймерах, чтобы запускать только один раз, а те 2 метода под ним, чтобы запустить X раз.
Как я могу это сделать?
Ну я не могу добавить цикл ниже все, что просто не будет работать – DaxHR
я не действительно проверить содержимое ваших таймеров, просто сделать методы, чтобы они запускайте последовательно, и вам должно быть хорошо идти. В противном случае даже с вашей существующей методологией они будут перешагивать друг на друга. –