Sobes.tech
Junior — Middle

Czy możesz wymienić typy kluczy używanych w Flutter do zarządzania widżetami?

sobes.tech AI

Odpowiedź od AI

W Flutterze do zarządzania stanem i identyfikacją widżetów używa się następujących typów kluczy:

  • GlobalKey — unikalny klucz, który umożliwia dostęp do stanu widżetu z dowolnego miejsca w aplikacji. Używany, gdy trzeba zachować stan lub zarządzać widżetem poza jego kontekstem.

  • LocalKey — klasa bazowa dla kluczy, które są unikalne w obrębie jednego rodzica. Należą do nich:

    • ValueKey<T> — klucz oparty na wartości (np. string, liczba), przydatny do identyfikacji widżetów z określoną wartością.
    • ObjectKey — klucz oparty na obiekcie, porównuje obiekty po referencji.
  • UniqueKey — generuje unikalny klucz, który zawsze różni się od innych. Używany, gdy trzeba zagwarantować, że widżet zostanie ponownie utworzony.

Przykład użycia ValueKey:

ListView(
  children: items.map((item) => ListTile(
    key: ValueKey(item.id),
    title: Text(item.name),
  )).toList(),
)