似たような例が表示されます。 ヘッダーコンポーネントとメインページコンポーネントがあると仮定します。メインページでは、このようなonScroll方法でヘッダ・コンポーネントにscrollY値を渡すことができます
onScroll={Animated.event([
{
nativeEvent: {
contentOffset: {
y:
this.refs.header === undefined
? 0
: this.refs.header.state.scrollY
}
}
}
])}
とヘッダコンポーネントよりも、あなたはこの
const headerHeight = this.state.scrollY.interpolate({
inputRange: [0, HEADER_SCROLL_DISTANCE],
outputRange: [HEADER_MAX_HEIGHT, HEADER_MIN_HEIGHT],
extrapolate: "clamp"
});
ようheaderHeightまたはヘッダパディングスタイルを変更するために、あなたのごscrollY値を補間することができます
uはあなたのanimated.viewこのようなスタイルを変更するには持っているより:
<Animated.View style={[styles.someStyle, {height: headerHeight}]}></Animated.View>
私にどんな質問をお気軽に。
onScrollスクロール中にフレームごとに1回だけ発生します。だから何度も何度もあなたの関数を呼び出すことを止める必要があります。タイムアウトやフラグを設定して、関数の呼び出しを停止します。 –