Wie das umzusetzen, event und delegate-Konzept in Android?
Ich habe eine Aktivität, die fordert, eine webservice-und nicht-xml-parsing. ich möchte, dass meine Aktivität zu warten, bis die xml-parsing-Klasse ausführen und dann möchte ich meine Tätigkeit fortsetzen. ich Frage mich, ob es ein Ereignis gibt, delegieren Konzept ist, dass in android durch die ich machen kann mein xml-parsing-Klasse reagieren zu meiner Tätigkeit, wenn es vorbei ist.
InformationsquelleAutor user590849 | 2011-03-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, gibt es. Sie lieben die
ResultReceiver
Klasse. Um eine zu erstellen, müssen Sie passieren eineHandler
(innerhalb der Aktivität), und überschreiben Sie dieonReceiveResult
Methode.So, was Sie tun, ist senden Sie einen Verweis von der
ResultReceiver
an den service (über dieIntent
extras), und wenn die XML-parsing erfolgt, rufen Sie diesend
Methode aus derService
. Damit ist Ihre Tätigkeit wird darüber informiert, dass das XML-parsing beendet hat.Gibt es eine Google-IO-video, wo diese Technik erklärt wird. Sie können auch die Folien herunterladen verwendet in der Konferenz.
Wenn Sie möchten, Beispiel-code, werfen Sie einen Blick auf die iosched app. Es wird lehren, wie man erstellen Sie eine
ResultReceiver
proxy wird Ihnen helfen, sich mit änderungen an der Konfiguration (z.B. die Drehung des Geräts ändert)... weil, wie Sie wissen, wenn das passiert, das UI ist neu, so könnte es zu Speicherverlusten (Sie wissen schon, der service zeigen auf nicht existierende UI-Elemente).InformationsquelleAutor Cristian