A Positioned widget segítségével tudjuk vezérelni egy widgetnek az elhelyezkedését egy Stack widgeten belül.
Használata
A Positioned vesz egy child paramétert, ami lehet például egy Container widget:
Positioned(child: Container())
Van továbbá egy pozíciót jelző paramétere is, aminek értékei (mint koordináták) a következők lehetnek:
- left
- top
- right
- bottom
Ezzel a pozícióval mondjuk meg, hogy a child-ban megadott widget hogyan helyezkedjen el a Positioned előtti widgethez képest / afelett.
Itt egy konkrét példa, hogy milyen widget van mondjuk a Positioned előtt a Stack-en belül:
Stack(children: [
FadeInImage(
placeholder: MemoryImage(kTransparentImage),
image: NetworkImage(meal.imageUrl),
),
Positioned(
bottom: 0,
left: 0,
right: 0,
child: Container(),
)
]),
A Stack-en belül a legelső widget az ugyebár mindig kvázi a „background”, azaz háttér. A Stack-en belüli összes többi widget efelett helyezkedik el.
A konkrét pozíció pedig úgy fog alakulni a példában, hogy a Container widget a Stack hátterénel aljától kezdődik, és bal oldaltól jobb oldalig elfoglalja a teljes területet. A 0 érték jelzi, hogy nincs köz.
Ha mondjuk a right: 50 értéket használnánk, az azt jelentené, hogy a Container widget véget ér a jobb szél előtt 50 pixellel.