В Flutter, если вы хотите выполнить определенное действие после указанного timeout, вы можете использовать Future.delayed
функцию вместе с ключевыми словами async
и await
. Вот пример:
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');
}
}
В этом примере при нажатии кнопки performActionWithTimeout
вызывается функция. Внутри этой функции мы await Future.delayed(Duration(seconds: 3))
вводим задержку в 3 секунды. После задержки действие завершается.
Вы можете заменить действие внутри performActionWithTimeout
функции желаемой операцией. Этот timeout механизм может быть полезен, когда вы хотите отложить действие, не блокируя поток пользовательского интерфейса.
Имейте в виду, что если после моего последнего обновления были какие-либо обновления или новые пакеты, связанные с timeout in Flutter, вы также можете изучить эти варианты.