将变量转换为可听

时间:2019-10-24 14:23:15

标签: flutter dart

我有一个值会发生变化(SlidingPanel position)。不幸的是,此插件的创建者并未使该面板的控制器可听,但他添加了onPanelSlide函数,通过该函数我可以获取面板的当前位置。我有双重功能,但没有侦听器,这就是为什么我必须实现自己的可听性来创建AnimatedBuilder的原因。如何将从0.0到1.0的double转换为listenable, so I can plug it's value to AnimatedBuilder's animation parameter

1 个答案:

答案 0 :(得分:1)

将其转换为流是否可行?我从未用动画来做到这一点,但是您也许可以做这样的事情:

StreamController<double> _animationController = StreamController<double>.broadcast();
Function get updateAnimation => _animationController.sink.add;
Stream get animationStream => _animationController.stream;

如果将updateAnimation函数直接传递给onPanelSlide,则应该能够侦听animationStream中的那些值。