ValueListenableBuilder Code Sample(1)

使用ValueListenableBuilder和ValueNotifier重写counter程序


import 'package:flutter/material.dart';

void main(List<String> args) {

  runApp(const MaterialApp(

    home: Homepage(),

  ));

}

class Homepage extends StatefulWidget {

  const Homepage({super.key});

  @override

  State<Homepage> createState() => _HomepageState();

}

class _HomepageState extends State<Homepage> {

  ValueNotifier<int> count = ValueNotifier<int>(0);

  @override

  Widget build(BuildContext context) {

    return Scaffold(

      body: Center(

        child: Column(

          mainAxisAlignment: MainAxisAlignment.center,

          children: [

            const Text("You clicked : "),

            ValueListenableBuilder(

              valueListenable: count,

              builder: (context, value, child) {

                return Text("${count.value}");

              },

            )

          ],

        ),

      ),

      floatingActionButton: FloatingActionButton(

        child: const Icon(Icons.add),

        onPressed: () {

          count.value = count.value + 1;

        },

      ),

    );

  }

}


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容