首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当网络出现屏幕抖动时的图像负载

当网络出现屏幕抖动时的图像负载
EN

Stack Overflow用户
提问于 2019-03-03 15:52:50
回答 1查看 1.9K关注 0票数 0

当图像显示在屏幕上时,加载图像。当图像容器没有在显示区域从网络加载图像时,不要加载。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-03 16:46:02

这个问题有点令人困惑,但我将把它解释为,只有当图像在屏幕上抖动时才会加载。当它不在屏幕上时,不要加载。这通常被称为延迟加载。

在flutter中,可以使用多个库来实现这一点:

1.

lazy_load_scrollview依赖项添加到pubspec.yaml

代码语言:javascript
复制
dependencies:
  lazy_load_scrollview: 0.0.1

在Dart代码中,可以使用import package:lazy_load_scrollview/lazy_load_scrollview.dartListViewGridView封装在LazyLoadScrollView中。确保添加了一个endOfPageListener,它将在到达列表底部时接收调用。

代码语言:javascript
复制
@override
Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: LazyLoadScrollView(
        endOfPageListener: () => loadMore(),
        child: ListView.builder(
          itemCount: data.length,
          itemBuilder: (context, position) {
            return Text("Position $position");
          },
        ),
      ),
    );
}

这是由QuirijnGB开发的,这个库是可用的这里

2

另一方面,您可以使用flutter_pagewise,它在默认情况下也实现了这一点。颤振拍支持ListViewGridViewSliverListViewSliverGridView,我认为GridView可能对您的图像有用。

为了这个,

将此添加到依赖项中

代码语言:javascript
复制
dependencies:
    flutter_pagewise:

然后把它导入你的页面,

代码语言:javascript
复制
import 'package:flutter_pagewise/flutter_pagewise.dart';

然后你的列表视图就会这样工作:

代码语言:javascript
复制
PagewiseListView(
  pageSize: 10,
  padding: EdgeInsets.all(15.0),
  itemBuilder: (context, entry, index) {
    // return a widget that displays the entry's data
  },
  pageFuture: (pageIndex) {
    // return a Future that resolves to a list containing the page's data
  }
);

我希望这能帮上忙!

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54970675

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档