Closed ColaQian closed 1 year ago
列表视图倒序显示
ListView.builder(
...
reverse: true,
...
)
唤起键盘或者表情面板你自己肯定是能知道的,再手动调一次 jumpTo
滚动到最底部
scrollController.jumpTo(0);
列表视图倒序显示
ListView.builder( ... reverse: true, ... )
唤起键盘或者表情面板你自己肯定是能知道的,再手动调一次
jumpTo
滚动到最底部scrollController.jumpTo(0);
多谢大佬解惑。我这边注意到
ScrollController scrollController = ScrollController();
ListObserverController observerController = ListObserverController(controller: scrollController)
scrollController和observerController 都有一样的滚动方法(jumpTo, animateTo),尝试了下scrollController 能滚动成功,但是observerController则不行,这两个有啥区别么?什么场景下该用哪个呢?
区别与关系:
scrollController.jumpTo
传入的是偏移量,observerController.jumpTo
传入的是下标observerController.jumpTo
内部是依赖了 scrollController.jumpTo
去实现的滚动,只是根据开发者传入的下标去找对应的 item
然后计算偏移,所以在使用 observerController.jumpTo
的时候要注意将 scrollController
传递给 ListView
的 controller
,否则不会生效!综上,面对上面说的场景,虽然都是传入 0
回到最顶部(倒序),但是如果使用 observerController.jumpTo
的话,它会根据你传入的下标去计算偏移量,其实你知道偏移量就是 0
,没必要去计算,这个时候最好是用 scrollController.jumpTo
区别与关系:
scrollController.jumpTo
传入的是偏移量,observerController.jumpTo
传入的是下标observerController.jumpTo
内部是依赖了scrollController.jumpTo
去实现的滚动,只是根据开发者传入的下标去找对应的item
然后计算偏移,所以在使用observerController.jumpTo
的时候要注意将scrollController
传递给ListView
的controller
,否则不会生效!综上,面对上面说的场景,虽然都是传入
0
回到最顶部(倒序),但是如果使用observerController.jumpTo
的话,它会根据你传入的下标去计算偏移量,其实你知道偏移量就是0
,没必要去计算,这个时候最好是用scrollController.jumpTo
嗯嗯了解了,多谢多谢~
Platforms
dart
Description
想问下,如果想实现类似微信那种唤起键盘或者选择表情列表时,如果当前列表不是在最底部,需要自动滑动到最底部,这个有好的解决方案吗
My code
No response
Try do it
No response