ANDROID: Wie setze ich eine Verzögerung nach dem Drücken einer Taste?

7

Ich habe einen Knopf und wenn er gedrückt wird, spielt er eine Audiodatei ab. Ich möchte eine 5-sekündige Verzögerung auf den Button legen, damit die User den Button nicht mehr knacken und den Sound immer und immer wieder spielen. Ich schätze, was ich wirklich will, dass die Taste für 5 Sekunden deaktiviert wird, nachdem es gedrückt wurde. Weiß jemand, wie man das macht?

    
fargoh 15.11.2012, 13:07
quelle

3 Antworten

29

In Ihrem onClickListener für die Schaltfläche:

%Vor%

Dadurch wird die Schaltfläche beim Klicken deaktiviert und nach 5 Sekunden wieder aktiviert.

Wenn das Klickereignis in einer Klasse behandelt wird, die View und nicht in einer Aktivität erweitert, machen Sie dasselbe, aber ersetzen Sie runOnUiThread durch post .

    
TofferJ 15.11.2012, 13:11
quelle
20

Sie können Ihre Schaltfläche deaktivieren und dann die postDelayed Methode auf Ihrer Schaltfläche.

%Vor%

Dies ist ähnlich der Timer-Lösung, aber es könnte besser Konfigurationsänderungen behandeln (zB wenn der Benutzer das Telefon dreht)

    
nicopico 15.11.2012 13:18
quelle
2

Hier gehen Sie.

%Vor%     
Vipul Shah 15.11.2012 13:15
quelle

Tags und Links