Frage

Ich habe eine App, in der es nur einen Timer mit einem ganzen Bündel speziellen Methoden in der Hauptaktivität ist. Das funktioniert gut ohne Probleme. Nun, dass ich es arbeitet, versuche ich, es in eine viel kompliziertere Anwendung aufzunehmen, in der ich den Timer an zahlreichen Stellen über Fragmente einfügen werde.

Soll ich alle meine speziellen Methoden in meine Fragmentaktivität aufnehmen? Dh:

generasacodicetagpre.

oder sollte ich sie in mein main aufnehmen?

Ich frage, weil ich in beide Räume ausprobiert habe, und die Fragment-Aktivitätsstraße gab mir Irrtümer in Java, aber sie in mein Hauptsort gab mir Fehler während der Laufzeit. Grundsätzlich habe ich einen Timer, der als eigenständige Anwendung großartig läuft, aber ich versuche, es in ein Fragment umzuwandeln, sodass ich es in mehrere Orte in meiner App anschließen kann.

Beispiele für "Sondermethoden": Ich mache eine Ansicht im Layout und aktualisieren Sie sie entsprechend den neuen Nummern, die auf dem Timer eingegeben wurden. Diese Methoden erfordern, dass die Ansicht aufgebläht werden muss, bevor sie verwendet werden können.

Hinweis: Die Fehler zur Laufzeit, die ich erleben, sind NullPointEexceptions.

War es hilfreich?

Lösung

Die Idee hinter einem Fragment besteht darin, dass es sich um einen knopfbaren Abschnitt (dh Fragment) einer Aktivität handelt, die in anderen Aktivitäten verwendet werden kann, oder sogar in derselben Aktivität, jedoch mit Zusatz oder Fehlen anderer Fragmente.

In der Google Mail-App ist beispielsweise die Liste aller E-Mails in einem Posteingang ein Fragment, und der tatsächliche Inhalt einer E-Mail ist ein weiteres Fragment. Auf einem Tablet im Landschaftsmodus werden beide gezeigt. Ein Telefon im Porträtmodus zeigt jedoch nur eines der beiden Fragmente auf einmal.

Somit sollte jedes Fragment alle Funktionalität und UI-Komponenten einkapseln, die zur Verwendung dieses Fragments erforderlich sind. Dies bedeutet, dass alle Ihre "speziellen" Methoden wie das Aufblasen der Sicht des Fragments XML innerhalb des Fragments passieren sollten.

Die Aktivität (oder die Aktivitäten), die das Fragment nutzen, sollte nur ein FragmentManager (oder ein ähnliches Verfahren) verwenden, um Ihr Fragment mit dem Layout der Aktivität hinzuzufügen. Die übergeordnete Aktivität eines Fragments sollte auch die Kommunikation zwischen Fragmenten und anderen Komponenten wie anderen Tätigkeiten, Fragmenten oder Threads umgehen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top