2012-03-27 19 views
1

Ich möchte eine Animation drehen, um eine Aktion in meinem ActionBar. Für die ActionBar benutze ich ActionBarSherlock.Android: ActionBar Artikel Animation

Mein Problem ist, dass in allen Lösungen gefunden I (z Animated Icon for ActionItem) sie die MenuItem bekommen, die in onOptionsItemSelected(MenuItem item) animiert werden soll.

Aber ich möchte in der Lage sein, die Animation zu starten, sogar bevor eine Aktion ausgewählt ist. Also wie kann ich die MenuItem bekommen?

Antwort

7

Rufen Sie findItem() auf der Menu an onCreateOptionsMenu() geliefert.

+0

Das Problem ist onCreateOptionsMenu() heißt AFTER onCreate. Aber der Thread, der die Animation startet und in onCreate gestartet wird, ist schneller als onCreateOptionsMenu. Also gibt es eine andere Lösung? – anonymous

+1

Sie können etwas nicht animieren, das nicht da ist. Selbst wenn onCreateOptionsMenu() nach onCreate() aufgerufen wird (ist dieser Vertrag in allen Fällen wahr?), Wurde Ihr Menü nicht aufgebläht und es gibt keine zu animierenden MenuItems. Marks Lösung ist korrekt. – James

+2

@anonymous: Starten Sie Ihren Thread in 'onCreateOptionsMenu()'. Niemand zwingt Sie, es in 'onCreate()' zu starten. – CommonsWare