Dans Flutter, si vous souhaitez effectuer une certaine action après un spécifié timeout, vous pouvez utiliser la Future.delayed
fonction avec les mots-clés async
et await
. Voici un exemple :
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');
}
}
Dans cet exemple, lorsque le bouton est enfoncé, la performActionWithTimeout
fonction est appelée. À l'intérieur de cette fonction, nous utilisons await Future.delayed(Duration(seconds: 3))
pour introduire un délai de 3 secondes. Après le délai, l'action est terminée.
Vous pouvez remplacer l'action dans la performActionWithTimeout
fonction par l'opération souhaitée. Ce timeout mécanisme peut être utile lorsque vous souhaitez retarder une action sans bloquer le thread d'interface utilisateur.
Gardez à l'esprit que s'il y a eu des mises à jour ou de nouveaux package liés à timeout après Flutter ma dernière mise à jour, vous voudrez peut-être également explorer ces options.