【发布时间】:2017-01-27 19:52:31
【问题描述】:
任何代码示例如何实现 Animated.diffClamp?
我正在尝试创建一个类似于 google play 应用程序中的标题滚动动画。当您开始向下滚动时,我已经隐藏了标题,但问题是我想在您开始向上滚动时再次显示标题,它仅在您到达视图顶部时显示。
class Services extends Component {
constructor(props){
super(props);
this.state = {
scrollY : new Animated.Value(0),
}
}
renderScrollViewContent(){
return (
<View style={styles.scrollViewContent}>
</View>
)
}
render() {
const headerHeight = this.state.scrollY.interpolate({
inputRange: [0, 60],
outputRange: [0, -60],
extrapolate: 'clamp'
});
return (
<View style={styles.container}>
<ScrollView style={styles.container}
scrollEventThrottle={16}
onScroll={Animated.event(
[{nativeEvent: {contentOffset: {y: this.state.scrollY}}}]
)}
>
{this.renderScrollViewContent()}
</ScrollView>
<Animated.View style={[styles.header, {top: headerHeight}]}>
<View style={styles.bar}>
<Text style={styles.title}>Title</Text>
</View>
</Animated.View>
</View>
);
}
}
【问题讨论】:
标签: android animation react-native