flutter_scrollview_observer icon indicating copy to clipboard operation
flutter_scrollview_observer copied to clipboard

[How to use] CustomScrollView 中SliverList.builder 想要实现IM保持消息位置需要怎么实现?

Open floatTop opened this issue 8 months ago • 3 comments

Platforms

dart

Description

直接ListViewObserver和ChatScrollObserver好像并不能实现这样场景

My code

ListViewObserver(
                controller: controller.observerController,
                child: SmartRefresher(
                  physics: ChatObserverClampingScrollPhysics(
                      observer: controller.chatObserver),
                  scrollController: controller.scrollController,
                  enablePullUp: true,
                  enablePullDown: true,
                  controller: controller.refreshController,
                  onRefresh: controller.onRefresh,
                  onLoading: controller.onLoading,
                  header: RefreshHeaderWidget(),
                  footer: buildCustomFooter,
                  child: CustomScrollView(
                    slivers: [
                      SliverToBoxAdapter(child: _buildGoldenDogInfo()),
                      SliverToBoxAdapter(child: _buildResetButton()),
                      _buildSignalList()
                    ],
                  ),
                ),
              ),

Try do it

No response

floatTop avatar Apr 03 '25 08:04 floatTop

通过 ListViewObserversliverListContexts 回调返回你要观察的 SliverListBuildContext 即可。

LinXunFeng avatar Apr 03 '25 08:04 LinXunFeng

通过 ListViewObserversliverListContexts 回调返回你要观察的 SliverListBuildContext 即可。

有相应的demo么?

floatTop avatar Apr 08 '25 08:04 floatTop

没有,只需要通过 sliverListContexts 传个 _buildSignalListBuildContext 而已,sliverListContexts 的使用可以在示例代码里找

LinXunFeng avatar Apr 09 '25 12:04 LinXunFeng