Junior — Middle
Kannst du ein Beispiel für die Verwendung des StreamBuilder-Komponenten zur Aktualisierung der Benutzeroberfläche in Echtzeit geben?
sobes.tech KI
Antwort von AI
Die Komponente StreamBuilder in Flutter wird verwendet, um eine Benutzeroberfläche zu erstellen, die in Echtzeit aktualisiert wird, wenn neue Daten aus einem Stream eintreffen. Zum Beispiel, wenn du einen Zahlenstrom hast, der jede Sekunde einen neuen Wert ausgibt, ermöglicht StreamBuilder die automatische Aktualisierung des Widgets mit dieser Zahl.
Beispiel:
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('Zähler: \\${snapshot.data}');
} else {
return CircularProgressIndicator();
}
},
);
}
}
In diesem Beispiel wird der Text auf dem Bildschirm jede Sekunde aktualisiert und zeigt den aktuellen Wert des Zählers an.