Programu za Flutter hufanya kazi kwenye saizi nyingi za skrini (simu, kompyuta kibao, wavuti, desktop), kwa hivyo kujenga UI responsive (zinazoendana na saizi) na adaptive (zinazoendana na platform) ni jambo muhimu. Flutter hutoa zana kama MediaQuery, LayoutBuilder, na widget zinazonyumbulika kwa hili.
Responsive: kuendana na saizi ya skrini
// 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();
})
