I Flutter, hvis du ønsker at udføre en bestemt handling efter en specificeret timeout, kan du bruge Future.delayed
funktionen sammen med nøgleordene async
og await
. Her er et eksempel:
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
I dette eksempel kaldes funktionen, når der trykkes på knappen. Inde i denne funktion bruger vi await Future.delayed(Duration(seconds: 3))
til at indføre en forsinkelse på 3 sekunder. Efter forsinkelsen er handlingen fuldført.
Du kan erstatte handlingen i performActionWithTimeout
funktionen med din ønskede handling. Denne timeout mekanisme kan være nyttig, når du vil forsinke en handling uden at blokere UI-tråden.
Husk, at hvis der har været nogen opdateringer eller nye pakker relateret til timeout efter Flutter min sidste opdatering, vil du måske også undersøge disse muligheder.