Ich speichere einen der Menüpunkte aus meiner Aktivität als ein Klassenfeld, wenn innerhalb onCreateOptionsMenu()
.So umgehen Sie Timing-Problem in Android
_myMenuItem = (MenuItem) findViewById(R.id.menu_item);
Aber in onCreate()
Ich nenne ein asynchrones Verfahren, und das Ergebnis, dass diktiert, ob ich die Sichtbarkeit wahr oder falsch machen sollte auf dem Menüpunkt; Zum Beispiel:
if (someCondition) {
_myMenuItem.setVisible(true);
}
Das Problem ist manchmal die Async Methode abgeschlossen (und der obige Code genannt wird), bevor das Menü aufgeblasen wird, eine Null-Zeiger Ausnahme verursacht.
Wie kann ich dieses Timing-Problem beheben? Im Idealfall ohne den asynchronen Anruf innerhalb onCreateOptionsMenu()
wenn jemand einen guten Weg kennt. Danke
'Bind ersten' danach rufen Sie Ihre 'async Methode' .... – sushildlh
Könnten Sie bitte mehr erklären? – b85411
könnten Sie bitte Ihren vollständigen Aktivitätscode posten? – sushildlh