gpt4 book ai didi

javascript - react 原生 - 禁用 1 个方向的滚动

转载 作者:行者123 更新时间:2023-12-05 00:27:01 34 4
gpt4 key购买 nike

有没有办法在 native react (iOS)中禁用一个 ScrollView?

我的意思是我只需要下拉刷新,但我也可以拉起来。
我想禁用上拉。

  <ScrollView

refreshControl={
<RefreshControl
refreshing={this.state.isRefreshing}
onRefresh={this._onRefresh}></RefreshControl>}
style={styles.container} contentContainerStyle={{flex: 1}}>

最佳答案

我不知道 ScrollView 中的任何 Prop 可以做到这一点。
我能想到的一种方法是创建一个状态来跟踪您是否向上滚动。然后通过执行以下操作计算您滚动的方式:

const [scrollDisabled, setScrollDisabled] = useState(false);

let viewPosition = 0;

const disableDownwardScroll = event => {
const currentPosition = event.nativeEvent.contentOffset.y;
const isScrollingDown =
currentPosition > 0 &&
currentPosition > viewPosition
? true
: false;
setScrollDisabled(isScrollingDown);
}


return(
<ScrollView
onScroll={disableDownwardScroll}
disableScrollViewPanResponder={scrollDisabled}>

<Content />

</ScrollView>
);

我自己以前从未使用过 Prop “disableScrollViewPanResponder”,但我认为这就是你所需要的。

关于javascript - react 原生 - 禁用 1 个方向的滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42704152/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com