繁体   English   中英

如何仅显示 10 秒的新屏幕:Flutter

[英]How to show a new screen for 10 seconds only: Flutter

我试图在 flutter 中显示一个屏幕,它应该只出现 10 秒,然后应该消失回到上一个屏幕。 这应该如何在 flutter 中以正确的方式完成。 是否可以在 Flutter 中使用 timer.periodic?

在您希望关闭的屏幕的初始状态中添加

Future.delayed(Duration(seconds: 10), (){
  //Navigator.pushNamed("routeName");
  Navigator.pop(context);
 });

您可以在 initState 中使用Future.delayed创建新屏幕

class NewPage extends StatefulWidget {
  NewPage({Key? key}) : super(key: key);

  @override
  State<NewPage> createState() => _NewPageState();
}

class _NewPageState extends State<NewPage> {
  @override
  void initState() {
    super.initState();
    Future.delayed(Duration(seconds: 10)).then((value) {
      Navigator.of(context).pop();
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(),
    );
  }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM