【问题标题】:Listview reload when filter过滤时列表视图重新加载
【发布时间】:2020-03-21 14:53:09
【问题描述】:

我有一个列表视图构建器,它的内容最初是在 api 调用中填充的。

Container(
              child: RefreshIndicator(
                onRefresh: getOrderData,
                child: LoadMore(child:
                ListView.builder(
                    itemCount: _bookingData.bookingData == null
                        ?  Center(child: CircularProgressIndicator(),)
                        : _bookingData.bookingData.length,
                    shrinkWrap: true,
                    itemBuilder: (BuildContext context, int index) {
                      return
                        GestureDetector(
                          onTap: (){Navigator.push(context, MaterialPageRoute(builder: 
                         (context)=>BookingDetails(_bookingData.bookingData[index]
                          )));},
                          child: (widget.formattedDate == null&&widget.bookId == null) ?
                          // List()


                          ListPopUP(_bookingData.bookingData[index])

我想按日期过滤列表。所以我需要做另一个 api 请求。现在我想根据 api 响应重新加载列表视图。我怎样才能做到这一点

【问题讨论】:

  • 您可以使用空的 setState 调用或给 Listview 一个 UniqueKey

标签: api listview flutter dart


【解决方案1】:

如果您希望定期更新列表视图,为什么不使用 StreamBuilder?

【讨论】:

    【解决方案2】:

    你可以尝试应用 InheritedWidget 并定义一个像“of”这样的静态方法,其中包含setState((/*...*/) {/*...*/});,然后从另一个地方调用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-08-29
      • 2017-06-26
      • 2023-03-13
      • 1970-01-01
      • 2012-12-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多