Junior — Middle
StreamBuilder компонентин колдонуп интерфейсти реалдуу убакытта жаңыртуу үчүн мисал келтире аласызбы?
sobes.tech AI
AIден жооп
Flutter-деги StreamBuilder компоненти, потоктон (Stream) жаңы маалымат келгенде, реалдуу убакытта жаңыланган интерфейс түзүү үчүн колдонулат. Мисалы, эгерде сизде ар секунда жаңы маанини чыгара турган сандык поток болсо, StreamBuilder автоматтык түрдө виджетти ошол сан менен жаңыртат.
Мисал:
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('Санаачы: \\${snapshot.data}');
} else {
return CircularProgressIndicator();
}
},
);
}
}
Бул мисалда, экрандагы текст ар секундада жаңыланып, эсептегичтин учурдагы маанисин көрсөтөт.