美文网首页Flutter学习Flutter
Flutter 如何强制应用程序重新启动(任何位置)

Flutter 如何强制应用程序重新启动(任何位置)

作者: 学无止境666 | 来源:发表于2019-08-15 12:15 被阅读0次
有些场景需要app重启才生效的,那么flutter如何重启呢?
接下来就看下功能代码吧
import 'package:flutter/material.dart';

void main() {
  runApp(new RestartWidget(
    child: // new MaterialApp,
  ));
}

class RestartWidget extends StatefulWidget {
  final Widget child;

  RestartWidget({this.child});

  static restartApp(BuildContext context) {
    final _RestartWidgetState state =
        context.ancestorStateOfType(const TypeMatcher<_RestartWidgetState>());
    state.restartApp();
  }

  @override
  _RestartWidgetState createState() => new _RestartWidgetState();
}

class _RestartWidgetState extends State<RestartWidget> {
  Key key = new UniqueKey();

  void restartApp() {
    this.setState(() {
      key = new UniqueKey();
    });
  }

  @override
  Widget build(BuildContext context) {
    return new Container(
      key: key,
      child: widget.child,
    );
  }
}
然后需要重启是调用以下代码
RestartWidget.restartApp(context);
这样就可以重启App了

转载地址()

发现真的得好好学习下英语了,好多功能,问题,国内都找不到,哈哈激励下自己,不断进步
加油吧~蜗牛

相关文章

网友评论

    本文标题:Flutter 如何强制应用程序重新启动(任何位置)

    本文链接:https://www.haomeiwen.com/subject/rvgajctx.html