Nella programmazione ad eventi non è mai una grande idea forzare il programma a girarsi i pollici e Android è anche peggio.
ad ogni modo, come hai anticipato tu stesso, basta un timer programmato su 500ms e al suo evento tick disabilitare il timer stesso se non serve più ed eseguire il resto del codice.
per evitare che l'utente clicchi su qualche controllo mentre sei in delay, inserisci un pannello trasparente che copra l'intera area ed assorbi i suoi touch, rimuovendolo nelmtimer tick ovviamente.
idem per i keypress tipo tasto Back..
ricorda che Android e l'utente sono sempre pronti a scombinare i tuoi piani.eheh sono lontani i tempi in cui avevi pieno controllo della tua macchina!
ps: grazie per quel "ragazzi"... qui siamo quasi tutti vecchietti, o meglio, loro sono vecchietti, io sono ex-teenager...