{"id":19273031,"url":"https://github.com/fluttercandies/flutter_scrollview_observer","last_synced_at":"2025-05-15T14:07:49.954Z","repository":{"id":37492662,"uuid":"497210725","full_name":"fluttercandies/flutter_scrollview_observer","owner":"fluttercandies","description":"A widget for observing data related to the child widgets being displayed in a ScrollView. Maintainer: @LinXunFeng","archived":false,"fork":false,"pushed_at":"2025-03-23T11:42:53.000Z","size":7462,"stargazers_count":501,"open_issues_count":5,"forks_count":49,"subscribers_count":6,"default_branch":"main","last_synced_at":"2025-04-07T20:08:33.685Z","etag":null,"topics":["dart","flutter","gridview","listview","nestedscrollview","observer","scrollview","scrollview-observer","slivergrid","sliverlist"],"latest_commit_sha":null,"homepage":"https://pub.dev/packages/scrollview_observer","language":"Dart","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fluttercandies.png","metadata":{"files":{"readme":"README-zh.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":"CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"ko_fi":"linxunfeng"}},"created_at":"2022-05-28T04:18:20.000Z","updated_at":"2025-04-06T09:41:40.000Z","dependencies_parsed_at":"2023-01-31T03:32:02.632Z","dependency_job_id":"f2b77be7-f501-4b4c-9e42-26ca2ab41d9e","html_url":"https://github.com/fluttercandies/flutter_scrollview_observer","commit_stats":{"total_commits":292,"total_committers":6,"mean_commits":"48.666666666666664","dds":"0.044520547945205435","last_synced_commit":"355f32f9a3c9b9711ba392921417c86986bcb061"},"previous_names":["fluttercandies/flutter_scrollview_observer","linxunfeng/flutter_scrollview_observer"],"tags_count":51,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluttercandies%2Fflutter_scrollview_observer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluttercandies%2Fflutter_scrollview_observer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluttercandies%2Fflutter_scrollview_observer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fluttercandies%2Fflutter_scrollview_observer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fluttercandies","download_url":"https://codeload.github.com/fluttercandies/flutter_scrollview_observer/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254355335,"owners_count":22057354,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["dart","flutter","gridview","listview","nestedscrollview","observer","scrollview","scrollview-observer","slivergrid","sliverlist"],"created_at":"2024-11-09T20:40:12.028Z","updated_at":"2025-05-15T14:07:44.934Z","avatar_url":"https://github.com/fluttercandies.png","language":"Dart","funding_links":["https://ko-fi.com/linxunfeng","https://ko-fi.com/T6T4JKVRP"],"categories":[],"sub_categories":[],"readme":"![](https://github.com/LinXunFeng/flutter_assets/raw/main/flutter_scrollview_observer/banner.png)\n\n# Flutter ScrollView Observer\n\n[![author](https://img.shields.io/badge/author-LinXunFeng-blue.svg?style=flat-square\u0026logo=Iconify)](https://github.com/LinXunFeng/) [![pub](https://img.shields.io/pub/v/scrollview_observer?\u0026style=flat-square\u0026label=pub\u0026logo=dart)](https://pub.dev/packages/scrollview_observer) [![stars](https://img.shields.io/github/stars/fluttercandies/flutter_scrollview_observer?style=flat-square\u0026logo=github)](https://github.com/fluttercandies/flutter_scrollview_observer)\n\nLanguage: 中文 | [English](https://github.com/fluttercandies/flutter_scrollview_observer)\n\n这是一个可用于监听滚动视图中正在显示的子部件的组件库。\n\n## ☕ 请我喝一杯咖啡\n\n[![ko-fi](https://ko-fi.com/img/githubbutton_sm.svg)](https://ko-fi.com/T6T4JKVRP) [![wechat](https://img.shields.io/static/v1?label=WeChat\u0026message=微信收款码\u0026color=brightgreen\u0026style=for-the-badge\u0026logo=WeChat)](https://cdn.jsdelivr.net/gh/FullStackAction/PicBed@resource20220417121922/image/202303181116760.jpeg)\n\n微信技术交流群请看: [【微信群说明】](https://mp.weixin.qq.com/s/JBbMstn0qW6M71hh-BRKzw)\n\n## 📖 文章\n\n- [Flutter - 获取ListView当前正在显示的Widget信息](https://mp.weixin.qq.com/s/cN3qeinBPlo5rtEpoQBVVA) | [备用链接](https://juejin.cn/post/7103058155692621837)\n- [Flutter - 列表滚动定位超强辅助库，墙裂推荐！🔥](https://mp.weixin.qq.com/s/fplqfBpXwvx6mEO6vflkww) | [备用链接](https://juejin.cn/post/7129888644290068487)\n- [Flutter - 快速实现聊天会话列表的效果，完美💯](https://mp.weixin.qq.com/s/xNiGuSLcJtDAiLoHuGWp6A) | [备用链接](https://juejin.cn/post/7152307272436154405)\n- [Flutter - 船新升级😱支持观察第三方构建的滚动视图💪](https://mp.weixin.qq.com/s/FMXPyT-lX8YOXVmbLCsVUA) | [备用链接](https://juejin.cn/post/7240751116702269477)\n- [Flutter - 瀑布流交替播放视频 🎞](https://mp.weixin.qq.com/s/miP5CfKtcRhFGr08ot5wOg) | [备用链接](https://juejin.cn/post/7243240589293142077)\n- [Flutter - IM保持消息位置大升级(支持ChatGPT生成式消息) 🤖](https://mp.weixin.qq.com/s/Y3EN9ZpLb6HLke2vkw0Zwg) | [备用链接](https://juejin.cn/post/7245753944180523067)\n- [Flutter - 滚动视图中的表单防遮挡 🗒](https://mp.weixin.qq.com/s/iaHyYMjZSPBggLw2yZv8dQ) | [备用链接](https://juejin.cn/spost/7266455050632921107)\n- [Flutter - 秒杀1/2曝光统计 📊](https://mp.weixin.qq.com/s/gNFX4Au4esftgTPXHvB4LQ) | [备用链接](https://juejin.cn/post/7271248528998121512)\n- [Flutter - 如何快速搓一个微信通讯录列表(azlist) 📓](https://mp.weixin.qq.com/s/1bmYSvtOYX83DLncvnBjqA) | [备用链接](https://juejin.cn/post/7294884963631497254)\n- [Flutter - 支持观察NestedScrollView，兼容性更强 😈](https://mp.weixin.qq.com/s/1dsmRg8q2VJ6HzasLgoVpA) | [备用链接](https://juejin.cn/post/7388444606456840211)\n- [Flutter - 轻松实现PageView卡片偏移效果](https://mp.weixin.qq.com/s/Q8zk89bgr_8bgWQ4F86VUQ) | [备用链接](https://juejin.cn/post/7411516362916216859)\n- [Flutter - 轻松搞定炫酷视差(Parallax)效果](https://mp.weixin.qq.com/s/Fi-X2eJRWj17sqCcVqbPRQ) | [备用链接](https://juejin.cn/post/7416655730214699017)\n\n## 🔨 功能点\n\n\u003e 不需要改变你当前所使用视图，只需要在视图外包裹一层即可实现如下功能点\n\n- [x] 监听滚动视图中正在显示的子部件\n- [x] 支持滚动到指定下标位置\n- [x] 快速实现聊天会话列表的效果\n- [x] 支持在插入或更新消息时保持IM消息位置，避免抖动\n\n## 🎀 支持\n\n- [x] `PageView`\n- [x] `ListView`\n- [x] `SliverList`\n- [x] `GridView`\n- [x] `SliverGrid`\n- [x] 支持 `SliverPersistentHeader`，`SliverList` 和 `SliverGrid` 混合使用\n- [x] `NestedScrollView`\n- [x] 由第三方库构建的 `ScrollView`\n\n## 🕹 预览\n\n- 🖥 [在线预览](https://fluttercandies.github.io/flutter_scrollview_observer/)\n- 🏞 [示例图片](https://github.com/fluttercandies/flutter_scrollview_observer/wiki/Example)\n\n## 📦 安装\n\n在你的 `pubspec.yaml` 文件中添加 `scrollview_observer` 依赖:\n\n```yaml\ndependencies:\n  scrollview_observer: latest_version\n```\n\n在需要使用的地方导入 `scrollview_observer` :\n\n```dart\nimport 'package:scrollview_observer/scrollview_observer.dart';\n```\n\n## 📚 指南\n- [Wiki首页](https://github.com/fluttercandies/flutter_scrollview_observer/wiki/%E9%A6%96%E9%A1%B5)\n- [1、监听滚动视图中正在显示的子部件](https://github.com/fluttercandies/flutter_scrollview_observer/wiki/1%E3%80%81%E7%9B%91%E5%90%AC%E6%BB%9A%E5%8A%A8%E8%A7%86%E5%9B%BE%E4%B8%AD%E6%AD%A3%E5%9C%A8%E6%98%BE%E7%A4%BA%E7%9A%84%E5%AD%90%E9%83%A8%E4%BB%B6)\n- [2、滚动到指定下标位置](https://github.com/fluttercandies/flutter_scrollview_observer/wiki/2%E3%80%81%E6%BB%9A%E5%8A%A8%E5%88%B0%E6%8C%87%E5%AE%9A%E4%B8%8B%E6%A0%87%E4%BD%8D%E7%BD%AE)\n- [3、聊天会话](https://github.com/fluttercandies/flutter_scrollview_observer/wiki/3%E3%80%81%E8%81%8A%E5%A4%A9%E4%BC%9A%E8%AF%9D)\n\n\n\n## 🖨 关于我\n\n- GitHub: [https://github.com/LinXunFeng](https://github.com/LinXunFeng)\n- Email: [linxunfeng@yeah.net](mailto:linxunfeng@yeah.net)\n- Blogs: \n  - 全栈行动: [https://fullstackaction.com](https://fullstackaction.com)\n  - 掘金: [https://juejin.cn/user/1820446984512392](https://juejin.cn/user/1820446984512392) \n\n\u003cimg height=\"267.5\" width=\"481.5\" src=\"https://github.com/LinXunFeng/LinXunFeng/raw/master/static/img/FSAQR.png\"/\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluttercandies%2Fflutter_scrollview_observer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffluttercandies%2Fflutter_scrollview_observer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffluttercandies%2Fflutter_scrollview_observer/lists"}