美文网首页
flutter 刷新单个组件 ValueNotifier 和 V

flutter 刷新单个组件 ValueNotifier 和 V

作者: 司徒新新 | 来源:发表于2021-03-10 16:26 被阅读0次
    //注册数据监听器  <> 内是数据类型 你想要的类型  ()内是默认值
    ValueNotifier<bool> _valueNotifier = ValueNotifier<bool>(false); 
    
    @override
      Widget buildWidget(BuildContext context) {
        return ValueListenableBuilder<bool>(
          valueListenable: _valueNotifier,
          builder: (context, value, child) {
            return Visibility(
              visible: value == true,
              child: Container(
                color: baseColor(),
                width: getScreenWidth(),
                height: MediaQuery.of(context).padding.top,
              ),
            );
          },
        );
      }
    

    改变值 value可以是任何值 看你定义的值是什么

    XXBaseBtn(
          title: '点击',
          ontap: () {
           _valueNotifier.value = true;
          },
     )
    

    全部代码 model

    class XXValueNotifierTest extends StatefulWidget {
      XXValueNotifierTest({Key key}) : super(key: key);
    
      @override
      _XXValueNotifierTestState createState() => _XXValueNotifierTestState();
    }
    
    class _XXValueNotifierTestState extends State<XXValueNotifierTest> {
      //注册数据监听器  <> 内是数据类型 你想要的类型  ()内是默认值
      ValueNotifier<bool> _valueNotifier = ValueNotifier<bool>(false);
      @override
      Widget build(BuildContext context) {
        return Container(
          child: Column(
            children: [
              ValueListenableBuilder<bool>(
                valueListenable: _valueNotifier,
                builder: (context, value, child) {
                  return Visibility(
                    visible: value == true,
                    child: Container(
                      color: baseColor(),
                    ),
                  );
                },
              ),
              XXBaseBtn(
                title: '点击',
                ontap: () {
                  _valueNotifier.value = true;
                },
              )
            ],
          ),
        );
      }
    }
    

    相关文章

      网友评论

          本文标题:flutter 刷新单个组件 ValueNotifier 和 V

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