Junior — Middle
Kun je een voorbeeld geven van het gebruik van de StreamBuilder-component om de interface in realtime bij te werken?
sobes.tech AI
Antwoord van AI
De StreamBuilder-component in Flutter wordt gebruikt om een interface te bouwen die in realtime wordt bijgewerkt wanneer nieuwe gegevens binnenkomen uit een stream (Stream). Bijvoorbeeld, als je een stroom van getallen hebt die elke seconde een nieuwe waarde uitzendt, stelt StreamBuilder je in staat om de widget automatisch bij te werken met dat getal.
Voorbeeld:
Stream<int> counter() async* {
int i = 0;
while (true) {
await Future.delayed(Duration(seconds: 1));
yield i++;
}
}
class CounterWidget extends StatelessWidget {
@override
Widget build(BuildContext context) {
return StreamBuilder<int>(
stream: counter(),
builder: (context, snapshot) {
if (snapshot.hasData) {
return Text('Teller: \\${snapshot.data}');
} else {
return CircularProgressIndicator();
}
},
);
}
}
In dit voorbeeld wordt de tekst op het scherm elke seconde bijgewerkt en toont de huidige waarde van de teller.