Flutter 颤振中ChangeNotifier的生成器小部件 背景 ValueNotifier有一个ValueListenableBuilder小部件 Stream有一个StreamBuilder小部件 Future有一个FutureBuilder小部件 问题: 变更通知程序的生成器是什么 我试过的

Flutter 颤振中ChangeNotifier的生成器小部件 背景 ValueNotifier有一个ValueListenableBuilder小部件 Stream有一个StreamBuilder小部件 Future有一个FutureBuilder小部件 问题: 变更通知程序的生成器是什么 我试过的,flutter,dart,flutter-change-notifier,Flutter,Dart,Flutter Change Notifier,我尝试将ValueListenableBuilder与changeinnotifier一起使用,但是changeinnotifier没有实现ValueListenable 我知道我可以使用提供商的ChangeNotifierProvider,但我想知道是否有不需要第三方软件包的解决方案。您可以使用consumer进行更改和UI的构建! 试试这些-ChangeNotifier是Listenable小部件的直接实现,对于Listenable,您可以使用AnimatedBuilder,它从Listen

我尝试将
ValueListenableBuilder
changeinnotifier
一起使用,但是
changeinnotifier
没有实现
ValueListenable


我知道我可以使用
提供商的
ChangeNotifierProvider
,但我想知道是否有不需要第三方软件包的解决方案。

您可以使用consumer进行更改和UI的构建!
试试这些-

ChangeNotifier是Listenable小部件的直接实现,对于Listenable,您可以使用AnimatedBuilder,它从Listenable触发重建,而无需传回特定值
此外,您的类可以从ChangeNotifier扩展并向其添加新功能,您可以基于这些新功能创建自定义生成器小部件。这是一个补充答案,演示如何使用
动画生成器
ChangeNotifier
的更改上重建UI

这只是标准的计数器应用程序

计数器

导入“包:flift/foundation.dart”;
类计数器模型扩展了ChangeNotifier{
int _计数器=0;
int get count=>\u计数器;
无效增量(){
_计数器++;
notifyListeners();
}
}
主飞镖

导入“counter_model.dart”;
进口“包装:颤振/材料.省道”;
void main(){
runApp(MyApp());
}
类MyApp扩展了无状态小部件{
@凌驾
小部件构建(构建上下文){
返回材料PP(
主页:MyHomePage(),
);
}
}
类MyHomePage扩展StatefulWidget{
MyHomePage({Key}):超级(Key:Key);
@凌驾
_MyHomePageState createState()=>\u MyHomePageState();
}
类_MyHomePageState扩展状态{
最终_counterModel=counterModel();
@凌驾
小部件构建(构建上下文){
返回脚手架(
正文:中(
子:列(
mainAxisAlignment:mainAxisAlignment.center,
儿童:[
正文(
“您已经按了这么多次按钮:”,
),
动画生成器(
动画:_反模型,
生成器:(上下文,子对象){
返回文本(
“${u counterModel.count}”,
风格:Theme.of(context).textTheme.headline4,
);
}
),
],
),
),
浮动操作按钮:浮动操作按钮(
onPressed:_counterModel.increment,
工具提示:“增量”,
子:图标(Icons.add),
), 
);
}
}

AnimatedBuilder
(或者
AnimatedWidget
,如果您想要一些扩展
AnimatedWidget
)的自定义类@pskink,很有趣!我从名字上是不会猜到的。
消费者
小部件是提供商软件包的一部分,我正在寻找一个非第三方解决方案。然而,阅读你的链接是有帮助的,因为自从我上次阅读它以来,它已经被更新了。这真是太好笑了!!!一个动画建设者!!!