I Flutter är allt en widget — UI-element (knappar, text, bilder), layoutstrukturer (rader, kolumner, padding) och även appen själv är alla widgets. Widgets är de oföränderliga byggblocken som komponeras för att forma hela användargränssnittet.
Allt är en widget
Widgets describe the UI. EVERYTHING is a widget:
→ visible elements: Text, Image, Icon, Button, etc.
→ layout: Row, Column, Container, Padding, Center, Stack, etc.
→ structure: Scaffold (page structure), AppBar, etc.
→ even the app itself (MaterialApp) and abstract things (Padding, Theme)
→ You build UI by COMPOSING widgets into a tree (widgets contain other widgets).
Komponera widgets i ett träd
// build a UI by NESTING widgets (composition)
Scaffold( // page structure
appBar: AppBar(title: Text('Home')), // app bar with text
body: Center( // centers its child
child: Column( // vertical layout
children: [
Text('Hello'), // text widget
ElevatedButton( // a button
onPressed: () {},
child: Text('Click'),
),
],
),
),
)
// → a WIDGET TREE: Scaffold > Center > Column > [Text, Button]
