Compose - 滚动外部 Horizo​​ntalPager 时将 VerticalPager 滚动到顶部

Compose - Scroll VerticalPager to the top when outer HorizontalPager is scrolled

我在 Horizo​​ntalPager 中有一个 VerticalPager。

当我在 Horizo​​ntalPager 的第一页中将 VerticalPager 向下滚动到第 N 页,然后在 Horizo​​ntalPager 中滚动到其他页面,然后返回到 Horizo​​ntalPager 的第一页时,我在 VerticalPager 中向下滚动到的第 N 页是已保存。

我希望在滚动 Horizo​​ntalPager 时始终打开 VerticalPager 的第一页(而不是我浏览到的第 N 页)。

我怎样才能做到这一点?

我的代码:

val pagerState = rememberPagerState()

HorizontalPager(count = myList.size, state = pagerState) {
    idx ->
    myList[idx].let { cur ->
        val verPagerState = rememberPagerState(initialPage = 0)
        
        VerticalPager(
            count = cur.photos.size,
            state = verPagerState
        ) { page ->

        }
    }
}

以下是当页面不再可见时如何手动滚动它。

我使用 snapshotFlow,它创建了一个流,当内部使用的状态发生变化时,它会发出值。

val verPagerState = rememberPagerState(initialPage = 0)
LaunchedEffect(Unit) {
    snapshotFlow {
        !pagerState.isScrollInProgress
                && pagerState.currentPage != idx
                && verPagerState.currentPage != 0
    }.filter { it }
        .collect {
            verPagerState.scrollToPage(0)
        }
}