当前位置: 首页 > news >正文

公司网站建设怎么选择主机大小泰安seo培训

公司网站建设怎么选择主机大小,泰安seo培训,电子商务网站建设好么,婚庆公司有哪些服务Jetpack Compose 中使用分页 API 调用的无限滚动 最近,我在DashCoin 的硬币屏幕上添加了一个带有分页 API 调用的无限滚动。它使浏览硬币列表变得非常困难,并且确实减少了初始加载时间,比以前少了。如果没有正确实施,实施无限滚动…

Jetpack Compose 中使用分页 API 调用的无限滚动

effect
最近,我在DashCoin 的硬币屏幕上添加了一个带有分页 API 调用的无限滚动。它使浏览硬币列表变得非常困难,并且确实减少了初始加载时间,比以前少了。如果没有正确实施,实施无限滚动可能会很棘手。它可以轻松触发重新压缩并导致无限的 API 调用。这是我实现它的方式:

设置分页 API 调用并处理 UI 状态

您的 API 调用应该具有三种状态。加载、成功、错误

在加载状态
你想更新你的屏幕加载状态
ui-state
成功状态

  • 将您的 Loading 状态设置回 false。
  • 将响应中的新列表附加到旧列表。
  • 设置新的分页键。
  • 你想确定响应是否返回一个空列表,这意味着你到达了文件的末尾,这意味着你不需要继续向服务器发送请求。
    screenState
    错误状态
  • 将您的加载状态设置回 false
  • 更新你的错误值

screenState

分页数据处理

现在我们已经处理了屏幕状态,我们可以创建 Infinite Scroll Handler Composable
它需要一个,

  • 惰性列表状态来了解列表属性
  • 缓冲区和一个回调函数来加载更多项目
  • 对于任何需要计算并可能触发
    重组的状态,都应记住为派生状态。

看到这里,我们从惰性列表状态获取总项目数和最后一个项目索引,并比较最后一个项目可见索引是否大于总项目数减去缓冲区,这意味着我们到达了列表的末尾。

现在我们在我们记住的状态上启动 LaunchedEffect 并通过 SnapshotFlow 收集状态值以触发我们的回调函数。

infiniteState
如果您的列表立即加载,请确保执行以下操作

  • 确保您有两个独立的函数,getItemsFirstLoad()和getItemsPaginated()。
  • 第一次加载时将调用getItemsFirstLoad()并检查项目列表在第一次加载时是否为空。
  • 每次滚动到列表末尾以加载更多项目时都会调用getItemsPaginated() ,它会检查您是否没有到达响应列表的末尾并且列表不为空。

列表实现
现在你的列表应该是这样的
无限滚动效果

项目源码

项目参考地址:

https://github.com/MathRoda/DashCoin

http://www.hkea.cn/news/983178/

相关文章:

  • 做购物网站需不需要交税费郑州网站托管
  • 是不是做网站就能赚钱谷歌seo关键词优化
  • 萝岗门户网站建设今日重大新闻头条财经
  • 个人相册网站模板怎么把网站排名排上去
  • 建设外贸网站案例统计站老站长推荐草莓
  • 1688网站的特点全网营销系统
  • 西安做网站企业网址怎么申请
  • 专业网站建设品牌百度指数里的资讯指数是什么
  • 做网站规避什么网站制作
  • 网站开发工作方案2022拉人头最暴利的app
  • 网站建设好还是阿里巴巴好磁力猫torrent kitty
  • wordpress跨域访问前端优化网站
  • 住房和城乡建设部网站买卖合同北京中文seo
  • WordPress自己安装了插件深圳seo推广外包
  • 建立网站舆情分析报告范文
  • wordpress 空格 插件班级优化大师app
  • 成都有实力的网站建设网络培训心得
  • 中企高呈建设网站在百度怎么创建自己的网站
  • 女的和女的做那个视频网站怎么在网上做网络营销
  • 网站开发需要什么软件百度怎样发布作品
  • 专门做宠物食品的网站市场调研怎么做
  • 兰州网站建设q.479185700棒成年s8视频加密线路
  • 付费网站推广seo关键词排名优化怎么收费
  • 网站由那些组成google网页搜索
  • 对一个网站做性能测试谷歌paypal官网入口
  • 北京住房投资建设中心网站首页快速排名怎么做
  • 中国网站制作 第一个佛山网站优化
  • thinkphp做的教育网站微商引流推广
  • 做特卖网站手机版电商最好卖的十大产品
  • 怎样做网站平叿trinseo公司