微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

获取另一个 FlatlList 的滚动偏移量

如何解决获取另一个 FlatlList 的滚动偏移量

假设您有 2 个 FlatList A 和 B。

B嵌套在A中

A= 水平

B=垂直

在 B 中,您有垂直图像 在 A 中,您水平嵌套了 B 列表。图片按类别并排列出。

能否在A的onMomentumScrollEnd方法获取B的滚动位置?

我为什么要这样做?

我在平面列表 B 中有分页指示器,它是垂直的。因此,当我向上或向下滚动时,该指示器会根据它的 flatlit 的 onScroll 方法越过点。

当然,所有垂直图像的数量都不相同。 例如,在第一个垂直方向我向下滚动到第 3 个图像,因此 Inticagor 也转到第 3 个点, 然后我水平向右滑动,如果第二个垂直列表中没有第三个图像,指示器仍然不在点之外。

const scrollY = React.useRef(new Animated.Value(0)).current; // vertical scrollY pos.

所以,我需要以某种方式操纵主 scrollY 值 当我在 flatlist 中水平滚动时,它保存垂直滚动偏移量。将指示器移动到正确的位置。

这是分页组件:

<View style={styles().pagination}>
        {item.images.length > 0 &&
        item.images.map((_,index) => {
            return <View key={index} style={[styles().dot]} />;
                                })}
                            <Animated.View
                                style={[
                                    styles().dotIndicator,{
                                        transform: [
                                            {
                                                translateY: Animated.divide(
                                                    scrollY,IMAGE_HEIGHT
                                                ).interpolate({
                                                    inputRange: [0,1],outputRange: [0,DOT_INDICATOR_SIZE],}),},],]}
                            />
                        </View>

我相信当我在平面列表 A 中水平滚动时,我需要以某种方式重置 scrollY 位置

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。