În Flutter, dacă doriți să efectuați o anumită acțiune după o anumită timeout, puteți utiliza Future.delayed
funcția împreună cu cuvintele cheie async
și await
. Iată un exemplu:
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
home: MyHomePage(),
);
}
}
class MyHomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
return Scaffold(
appBar: AppBar(
title: Text('Timeout Example'),
),
body: Center(
child: ElevatedButton(
onPressed:() {
performActionWithTimeout();
},
child: Text('Perform Action with Timeout'),
),
),
);
}
Future<void> performActionWithTimeout() async {
print('Action started');
// Simulate a delay of 3 seconds
await Future.delayed(Duration(seconds: 3));
print('Action completed after timeout');
}
}
În acest exemplu, atunci când butonul este apăsat, performActionWithTimeout
funcția este apelată. În cadrul acestei funcții, introducem await Future.delayed(Duration(seconds: 3))
o întârziere de 3 secunde. După întârziere, acțiunea este finalizată.
Puteți înlocui acțiunea din cadrul performActionWithTimeout
funcției cu operația dorită. Acest timeout mecanism poate fi util atunci când doriți să întârziați o acțiune fără a bloca firul UI.
Rețineți că, dacă au existat actualizări sau pachete noi legate de timeout in Flutter după ultima actualizare, este posibil să doriți să explorați și acele opțiuni.