Sono in un'attività che deve svolgere un ruoloAnimationDrawable (un'animazione di "caricamento") mentre il resto del contenuto viene caricato. Ho iniziato l'animazione in un altro thread poiché le animazioni tendono a dare molto lavoro al thread principale, tuttavia l'animazione non può essere visualizzata correttamente e il logcat mostra più volte di aver saltato 40 fotogrammi o giù di lì. Pubblicherò il codice domani, mi dispiace per il ritardo. Nel frattempo, cosa può causare questo? tutto il thread ha dentro è il metodo di avvio per l'animazione drawable.
risposte:
0 per risposta № 1Non dovresti eseguire l'animazione fuori dal thread dell'interfaccia utente (thread "principale") - dovresti caricare il tuo contenuto in un altro thread usando a caricatore (o qualcosa di simile) e riprodurre l'animazione sul thread dell'interfaccia utente. Questo è ciò per cui è.
Ecco le linee guida ufficiali sui thread:
Non bloccare il thread dell'interfaccia utente
Non accedere al kit di strumenti dell'interfaccia utente Android dall'esterno del thread dell'interfaccia utente