Gibt es eine Möglichkeit, einen Listener manuell aus Code aufzurufen?Android: Call-Listener manuell von Java-Code
Weitere Hintergrundinformationen: Ich verwende einen Spinner und einen DatePicker. Mit dem Spinner können Sie einen Grund wählen, zu Hause zu bleiben (vielleicht krank, vielleicht haben Sie Urlaub) und mit dem DatePicker können Sie das Datum wählen, wie lange Sie nicht zur Verfügung stehen. Mit diesen beiden Informationen baue ich eine Zeichenfolge für ein TextView auf und zeige die gleichen Daten kompakt an. Der Aufbauprozess für die Zeichenfolge wird von einigen Listenern festgelegt, die Änderungen an einem der beiden Steuerelemente erkennen und die neue Zeichenfolge erstellen und einrichten. Wenn ich das Programm starte und einige Daten von einem Server lese, wird die Zeichenfolge nicht erstellt (klar, weil sich nichts geändert hat und kein Listener aufgerufen wird).
Die Problemumgehung besteht darin, die Zeichenfolge in meiner eigenen onLoaddata()
-Methode zu erstellen. Aber ich denke, es wäre eine sanftere Art, einen Hörer zu rufen, um die Saite für mich zu bauen. Ich kann auch einen Hörer "anrufen", wenn ich nur ein paar gefälschte .updateDate
mache, aber ich denke nicht, dass es eine gute Idee ist, nutzlose Anrufe zu erstellen ...
Vielleicht hat jemand von euch einen guten Tipp für mich?
Ihre eigene Methode, um Daten zu laden, ist die beste Option - der Code wäre klarer. –
Natürlich wird der Code klarer, aber ich muss den gleichen Code noch einmal schreiben (und ich mag es nicht, den gleichen Code zweimal oder mehr zu schreiben, wenn es nicht notwendig ist), über den ich nicht diskutieren möchte Workarounds, weil sie ohne Probleme arbeiten, möchte ich wissen, ob es eine Möglichkeit gibt, den Hörer zu rufen! – sandkasten
Sie müssen nicht den gleichen Code zweimal schreiben - verwenden Sie eine Methode, um Ihr TextView zu aktualisieren und es von jedem beliebigen Ort aus aufzurufen, egal ob der Callback des Hörers oder onCreate (..) –