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();
}
},
);
}
}
Այս օրինակով, էկրանին տեքստը ամեն վայրկյան թարմացվում է և ցույց է տալիս հաշվիչի ընթացիկ արժեքը։