在我们这个 StateManagementDemo 小部件里面 .. 小部件的状态是它自己管理的 .. 它需要的所有的状态都在这个小部件自己这里 .. 有时候这个状态可能在小部件的父辈那里 .. 把 State 从父辈那里传递过来,可以通过小部件的构造函数 ..
比如我们把这个 Scaffold 小部件的 body 属性的值,单独提取出来放在一个小部件里面 .. 在下面创建一个 StatelessWidget ... 名字可以叫它 Counter ...
把剪切的小部件粘贴到它的 build 方法里面 .. 作为方法 return 的东西 ..
在这个小部件里面 .. 需要一个 count 数据 .. 这个数据可以从它的父辈那里传递过来 .. 在小部件里面,先添加一个 final int 名字是 count ... 再添加一个构建函数 .. 里面需要一个 this.count ..
在 Chip 小部件里面显示的文字是 count ...
然后在 StateManagementDemo 里面用了一下刚才定义的这个 Counter 小部件 ..
使用这个 Counter 的时候,现在需要提供一个 count 属性 .. 这个属性的值可以使用上面定义的这个 _count ...
现在 Counter 小部件里面需要的数据是从它爸爸,也就是 StateManagementDemo 那里传递过来的 ...
保存一下 .. 再到模拟器上试一下 ... 按一下漂浮动作按钮 .. 会改变小部件的状态 .. 重建这个小部件 .. 注意这里重建的小部件是 StateManagementDemo .. 因为我们是在这个小部件里面用的 setState ..