美文网首页
[Flutter] StatefulWidget 有状态的 wi

[Flutter] StatefulWidget 有状态的 wi

作者: BudSwift | 来源:发表于2020-08-05 13:00 被阅读0次

    StatefulWidget 可以根据外部变量的变化而进行内容的刷新,其设计模式是:

    1. 指定一个 StatefulWidget,并 override 父类方法返回一个 state 对象
    class CardHome extends StatefulWidget {
      @override
      State<CardHome> createState() => CardHomeState();
    }
    
    1. 在 state 对象中保存状态属性,并根据状态动态渲染新的 widget,且 State 对象也有 ```build(buildContext:) 函数用于构造 widget
    
    class CardHomeState extends State<CardHome> {
      int level = 2;
      @override
      Widget build(BuildContext context) {
        return Text("Hello - $level";
    }
    
    1. 在 State 中可以调用 setState(fn) 函数进行状态的刷新,重新 build widget
    class CardHomeState extends State<CardHome> {
      int level = 2;
      @override
      Widget build(BuildContext context) {
        return Row(
            children: <Widget>[
                Text("Hello - $level";
                FlatButton(
                    onPress: () {
                        setState(() { level+= 1;)});
                    },
                    icon: Icon(Icons.add),
                    );
            ],
        );
    }
    

    相关文章

      网友评论

          本文标题:[Flutter] StatefulWidget 有状态的 wi

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