Ich habe dieses große Problem mit der Programmierung die ganze Zeit. Mein Szenario ist das folgende:Rufen Sie eine Methode auf, wenn Variable geändert
Ich habe meine loadingActivity. Es ist meine Startaktivität und sollte eine Art von Grafik anzeigen, während es einige Daten aus dem Internet lädt.
Die App erhalten diese Daten mit einer separaten Klasse, die einige JSON-Daten in einer asyncTask lädt. Jetzt möchte ich, dass meine loadingActivity informiert wird, wenn das Laden und Parsen beendet ist. Wie habe ich das geschafft?
Ich lese bereits über eine Schnittstelle changeListener aber konnte es nicht in meine Situation verwandeln.
Die Konstruktion ist folgende: Aktivität: InformationLoadActivity.class
StandardClasses: GetWeatherJsonData
und GetMyDatabaseJsonData
beide erweitert meine GetRawJsonData
meine Inhalte zu handhaben Download bereit.
InformationLoadActivity:
@Override
protected void onStart() {
super.onStart();
GetWeatherJsonData weatherData = new GetWeatherJsonData("http://api.openweathermap.org");
weatherData.execute();
}
innen und nach Informationen von Parsen der Wetter Finishing beginne ich die GetMyDatabaseJsonData
. Und innerhalb dieser Klasse möchte ich meine InformationLoadActivity.class
informieren, dass das Laden und Parsing beendet ist und es in diesem Fall in eine andere Aktivität springen kann, meine MainActivity
, die diesen geladenen Inhalt anzeigt.
Ich verstehe das nicht. Ich habe eine Methode "openMainActivity innerhalb meiner InformationLoadActivity, wo ich das" startActivity (intent); "Zeug. Aber wie kann ich das in meinem GetMyDatabaseJsonData aufrufen. – kuemme01
Um eine Absicht zu generieren brauche ich die Instanz meiner InformationLoadController oder nicht? Und nur Mit dieser Absicht kann ich zu meiner MainActivity wechseln – kuemme01
Erstelle einen Konstruktor für deine GetMyDatabaseJsonData Klasse, der Acticity als Argument akzeptiert.Wenn du also diese Klasseninstanz initiierst, musst du deinen Aktivitätskontext angeben.Nach dem onPostExecute kannst du deine Logik schreiben um zur nächsten Aktivität zu gehen – Nishith