美文网首页Flutter
Flutter 进度控件 & 使用 RefreshInd

Flutter 进度控件 & 使用 RefreshInd

作者: 黑键手记 | 来源:发表于2019-02-21 18:08 被阅读68次

    今天要聊的内容是

    Flutter 进度控件: ProgressIndicator 和 刷新控件 RefreshIndicator

    首先 我们看下类的结构吧


    可见,进度控件的结构很简单,仅仅两个分支而已,那么我们先来介绍外层的这两个

    LinearProgressIndicator

    结构见图


    很简单,需要提一下的是value
    • 他是设置当前进度的值,如果设置了,进度就停在设置的位置了,取值范围是0-1,1表示进度已经走完;
    • 如果没有设置这个value,那么这个进度控件上的进度条会一直往返刷新

    下面再来看下CircleProgressIndicator

    CircleProgressIndicator


    基本同LinearProgressIndicator类似,不同的是形状,这个是环形

    我们来看下二者的示例~

    首先定义背景颜色、进度颜色、创建两个进度控件

    然后将两个控件排列在一起,展示在视图上

    来看一下效果

    下面加上value值


    看下效果

    好,两个简单的进度条咱们就看完了,下面,我们使用RefreshIndicator实现下拉刷新数据

    RefreshIndicator

    这个控件很像 Android 中的SwipeRefreshLayout
    他可以嵌套 ListView 或者其他的控件,完成下拉刷新的效果。

    我们先来看下效果图

    好,我们开始看看逻辑

    一、看下RefreshIndicator的结构

    常用属性

    其中 最为重要的是 onRefresh属性
    这个属性需要

    设置一个返回值为 Future 类型的方法,即表示当刷新时 要处理的逻辑

    二、定义onRefresh属性 需要的方法


    这里,我们使用了

    Future.delayed(时间,处理逻辑); 
    

    来得到一个 Future

    除了此方法,还可以使用


    这些方法去返回Future

    需要注意还有 setState(){}函数,我们可以在可变的widget中可以使用 setstate(){} 函数,这个是 Flutter 系统定义好的,并不是我们自己创建的方法

    三、返回视图

    这样,即可实现上方效果图功能。

    总结知识点

    LinearProgressIndicator
    CircularProgressIndicator
    RefreshIndicator
    onRefresh属性
    setState方法
    得到 Future 返回值的方法

    Bingo,谢谢大家的关注~~

    相关文章

      网友评论

        本文标题:Flutter 进度控件 & 使用 RefreshInd

        本文链接:https://www.haomeiwen.com/subject/gsrdyqtx.html