Es gibt 3 Arten von Widgets, nicht nur 2.
- Stateful-Widget
- Stateless-Widget
- Inherited Widget
A staatenlos Widget wie eine Konstante ist. Es ist unveränderlich. Wenn Sie die Anzeige eines zustandslosen Widgets ändern möchten, müssen Sie eine neue erstellen.
Stateful Widgets sind das Gegenteil. Sie sind am Leben und können mit dem Benutzer interagieren. Stateful Widgets haben Zugriff auf eine Methode namens setState
, die im Grunde zu dem Framework sagt "Hallo, ich möchte etwas anderes anzeigen. Kannst du mich bitte neu zeichnen?".
Schließlich ist das vererbte Widget eine Mischung aus beiden Welten. Es ist unveränderlich und staatenlos. Aber ein anderes Widget (was auch immer es ist) kann dieses geerbte Widget abonnieren. Das bedeutet, dass beim Ersetzen des geerbten Widgets durch ein neues Widget alle Widgets, die das alte Widget abonniert haben, neu gezeichnet werden.
Am Ende wird normalerweise ein Stateful-Widget wie ein Controller verwendet. Ein zustandsloses Widget wird wie eine Ansicht verwendet. Und das geerbte Widget wird Ihre Konfigurationsdatei oder Ihr Modell sein.
Meinst du "zustandslos" und "stateful"? – EJP