V Flutter, če želite izvesti določeno dejanje po določenem timeout, lahko uporabite Future.delayed
funkcijo skupaj s ključnima besedama async
in await
. Tukaj je primer:
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
V tem primeru se funkcija prikliče ob pritisku na gumb. Znotraj te funkcije uporabljamo await Future.delayed(Duration(seconds: 3))
za uvedbo zakasnitve 3 sekund. Po zamudi je dejanje zaključeno.
Dejanje znotraj performActionWithTimeout
funkcije lahko zamenjate z želeno operacijo. Ta timeout mehanizem je lahko koristen, če želite odložiti dejanje, ne da bi blokirali nit uporabniškega vmesnika.
Upoštevajte, da boste morda želeli raziskati tudi te možnosti, če so bile po moji zadnji posodobitvi timeout povezane posodobitve ali novi paketi. Flutter