So möchte ich bestimmte Aktion X Anzahl ausgeführt werden, hängt davon ab, wie oft Benutzer es will. Benutzerauswahl wird von einem Textview-String ausgewählt werden, die mit diesem Code eingerichtet ist:Wiederholen Sie spezifische Aktion X Anzahl von Malen in 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));
}
Das sind im Grunde zwei Tasten, die oder Abnahmewert von Textview erhöhen.
Die Aktion, die ich x-mal durchgeführt werden soll, ist dies:
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();
}
So ist es Kombination von 3 seekbars oder Timer, ein Lauf nach dem anderen und dann sollten sie so oft wie Benutzer auswählt laufen.
Das Problem ist, ich habe keine Ahnung, wie Sie dies einrichten, und ich brauche diesen ersten Block von Code in Timern nur einmal ausgeführt werden, und diese 2 Methoden darunter X-mal auszuführen.
Wie kann ich es tun?
Nun, ich kann nicht unter das alles für Schleife hinzufügen, wird einfach nicht – DaxHR
arbeite ich den Inhalt Ihrer Timer prüfen, einfach nicht wirklich Methoden machen, dass sie sicherstellen, laufe sequenziell und du solltest gut gehen. Sonst werden sie sogar mit Ihrer bestehenden Methodik übertreten. –