Aufruf der Methode onResume, nachdem eine Warnung in Android geschlossen wurde?

8

Ich möchte wissen, ob das Ereignis die OnResume-Methode der Aktivität ausführt, in der sich der Benutzer befindet, wenn der Benutzer "Ja" in einem Warnungsdialog drückt, und dieser wird beendet.

Weil ich eine Schaltfläche "Reinigen" habe, die den Benutzer fragt, ob er wirklich sicher ist, alle Felder des Formulars (die Aktivität) zu löschen, um die Aktivität mit den leeren Feldern neu zu zeichnen. Das Formular wird dynamisch erstellt Ich kenne die Elemente in der GUI nicht a priori, um sie leer zu setzen ...

Sorry für mein schlechtes Englisch !!

Danke und Grüße!

    
alois.wirkes 11.04.2013, 14:35
quelle

4 Antworten

15

Ich bin mir nicht sicher, ob dies der richtige Ansatz ist, aber Sie sollten in der Lage sein, das zu tun, was Sie meiner Meinung nach tun. Wenn Sie das aus irgendeinem Grund erreichen möchten.

%Vor%

Sie möchten Ihre cleane Funktion anstatt von einem Lifecycle-Aufruf bei Erfolg anrufen, während Sie bei einem Fehler nichts tun.

Eine weitere Möglichkeit, dies zu erreichen, wäre, die aktuelle Aktivität mithilfe von Flags wieder nach vorne zu bringen.

%Vor%

Dies würde auch eine Möglichkeit bieten, Ihre Hauptaktivität aufzurufen, ohne direkt auf den Aufruf von onResume () zu verweisen, da dies nicht der richtige Ansatz ist. Ich wollte jedoch direkt auf die Frage antworten, wie sie gestellt wurde.

    
Jay Snayder 11.04.2013, 14:50
quelle
1

Um zu sehen, ob eine Methode aufgerufen wird, können Sie einen Haltepunkt bei der Methode onResume() angeben, um zu sehen, was passiert. Wenn Sie mit Acitvity Lifecycle nicht vertraut sind, können Sie sich damit vertraut machen und die mitgelieferte Dokumentation lesen.

Nun, ich denke nicht, dass du deine ganze layout neu zeichnen solltest, nur um% Views zu löschen. Es wäre meiner Meinung nach effizienter, alle Felder einfach mit setText() oder einer anderen Methode für alles, was Sie brauchen, zurückzusetzen, wenn der Benutzer auf "ok" oder was auch immer klickt. Sie können invalidate () verwenden, wenn Sie bestimmte% co_de neu zeichnen müssen %

Ich empfehle auch

Google I / O-Turbo lädt Ihre Benutzeroberfläche auf

Activity LifeCycle & lt; - sehr wichtig zu verstehen

    
codeMagic 11.04.2013 14:45
quelle
0

AFAIK Dies ist nicht möglich, da die Aktivität den onResume-Status bereits überschritten hätte, um das Dialogfeld anzuzeigen. Auf der folgenden Seite finden Sie weitere Informationen zum Lebenszyklus einer Android-App (die mir geholfen hat, besser zu verstehen):

App-Lebenszyklus

    
TronicZomB 11.04.2013 14:38
quelle
0

Wenn Sie nicht sicher sind, wann onResume aufgerufen wird, fügen Sie der Methode onResume ein Protokoll hinzu.

    
L. G. 11.04.2013 14:42
quelle

Tags und Links