Aplikacje Flutter działają na wielu rozmiarach ekranów (telefony, tablety, web, desktop), dlatego tworzenie responsywnych interfejsów (dostosowujących się do rozmiaru) i adaptacyjnych interfejsów (dostosowujących się do platformy) jest ważne. Flutter oferuje narzędzia takie jak MediaQuery, LayoutBuilder i elastyczne widgety do tego celu.
Responsywne: dostosowanie do rozmiaru ekranu
// MediaQuery — get screen dimensions and adapt
final width = MediaQuery.of(context).size.width;
if (width > 600) {
// tablet/desktop layout (e.g. side-by-side)
} else {
// phone layout (e.g. stacked)
}
// LayoutBuilder — adapt based on the available space (parent constraints)
LayoutBuilder(builder: (context, constraints) {
if (constraints.maxWidth > 600) return WideLayout();
return NarrowLayout();
})
