标签: flutter

Flutter路由退出动画

secondaryAnimation是ModalRoute类的一个get field,也实际存在于ModalRoute类中:ProxyAnimation _secondaryAnimationProxy;,另外我们还可以通过如下方式获取到secondaryAnimation对象:ModalRoute.of(context).secondaryAnimation

Flutter通过Completer将回调函数传值的方式转化为Future

在今天编写vision类的时候,遇到这么一个问题,我们需要从Image Widget中获取到图像的二进制数据。观察过源码之后发现,Image是对ImageProvider中的数据流进行了注册监听,用到了回调。我们采用同样的方式去获取ImageInfo对象,虽然ImagePrivider对我们提供了ImageStream,但是ImageStream类并不是继承自Stream,所以对于Stream提供的那些方法自然不能奏效。只能采取ImageStream提供的方案:ImageStreamListener,但是这样一来我们就只能通过ImageStreamListener参数中的回调函数来处理返回的数据,这样既不利于我们思维理解,也不利于数据的处理,那么有没有一种办法是可以将这种回调方式转化为Future返回值呢?答案当然是存在这种办法的。