W programie Flutter istnieją dwa główne typy Widgets: Stateless i Stateful. Są to dwa kluczowe typy Widgets, które odgrywają znaczącą rolę w budowaniu interfejsu użytkownika aplikacji.
Stateless Widgets
-
Stateless Widgets są widgets takie, które nie mają żadnego stanu i nie zmieniają się po utworzeniu. Gdy zmieni się stan aplikacji, Stateless Widgets przerysuj z nowymi wartościami, ale nie zachowaj żadnego stanu.
-
Stateless Widgets są odpowiednie dla podstawowych komponentów interfejsu użytkownika, które się nie zmieniają. Przykłady:
Text, Icon, Image, RaisedButton
. -
Stateless Widgets są tworzone przez dziedziczenie z klasy StatelessWidget i implementację metody build() w celu zwrócenia reprezentacji interfejsu użytkownika.
Stateful Widgets
-
Stateful Widgets mają widgets stan i mogą się zmieniać w czasie wykonywania. Gdy stan się zmieni, Stateful Widgets automatycznie zostanie przerysowany, aby odzwierciedlić nowe zmiany.
-
Stateful Widgets są zwykle używane, gdy potrzebne są interaktywne komponenty interfejsu użytkownika, które muszą przechowywać stan i zmiany w oparciu o interakcje użytkownika. Przykłady:
Form, Checkbox, DropdownButton.
-
Stateful Widgets są tworzone przez dziedziczenie z klasy StatefulWidget i łączenie z oddzielną klasą State w celu przechowywania stanu i zarządzania aktualizacjami interfejsu użytkownika.
Wniosek:
Stateless i Stateful Widgets są podstawowymi pojęciami w Flutter. Stateless Widgets są używane dla komponentów, które nie mają stanu i nie zmieniają się, podczas gdy Stateful Widgets są używane dla komponentów, które muszą przechowywać i zmieniać stan. Zastosowanie odpowiedniego typu Widgets dla każdego komponentu pozwala na zbudowanie elastycznego i wydajnego interfejsu użytkownika.