//研究Animated的顺序执行,延时执行,同时执行的效果动画
import React, {Component} from 'react';
import {
AppRegistry,
StyleSheet,
Animated,
View,
Text,
TouchableHighlight
} from 'react-native';
class RnAnimatedView extends Component {
constructor(poros){
super(poros);
this.state = {
//创建动画的数组,并map遍历赋值
anim: [1,2,3].map(() => new Animated.Value(0)),
}
}
animation1 = () => {
let timing = Animated.timing;
//stagger 延时执行数组中的动画
let stagger = Animated.stagger;
//parallel 同时执行数组中的动画
let parallel = Animated.parallel;
//sequence 顺序执行数组中的动画
Animated.sequence([
//依次延时200毫秒,执行数组中的动画
stagger(200, this.state.anim.map(left => {
return timing(left, {
toValue: 1,
duration: 2000,
})
})),
// Animated.delay(400),
parallel(this.state.anim.map(left => {
return timing(left, {
toValue: 0,
duration: 2000,
})
})),
]).start();
};
render() {
let views = this.state.anim.map(function (value, i) {
console.log('sssss', value,i);
return(
<Animated.View key={i} style={[test4Style.test4AnimationView, i === 0 ? {transform: [
{rotateX: value.interpolate({
inputRange: [0, 1],
outputRange: ['0deg', '360deg'],
})}
]} : i === 1 ? {transform: [
{rotateY: value.interpolate({
inputRange: [0, 1],
outputRange: ['0deg', '360deg'],
})}
]} : {transform: [
{rotateZ: value.interpolate({
inputRange: [0, 1],
outputRange: ['0deg', '360deg'],
})}
]},
]}>
<Text>我是第{i}个View</Text>
</Animated.View>
)
});
return(
<View style={test4Style.test4View}>
<TouchableHighlight onPress={this.animation1}>
<Text> 点我执行 动画 </Text>
</TouchableHighlight>
{views}
</View>
)
}
}
const test4Style = StyleSheet.create({
test4View: {
flex: 1,
backgroundColor: '#f1d433',
alignItems: 'center',
justifyContent: 'center',
},
test4AnimationView: {
backgroundColor: '#f35d22',
marginTop: 20,
}
});
AppRegistry.registerComponent('RnAnimatedView', () => RnAnimatedView);
React-Native 学习Animated -2
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 在rn学习中路由是困扰我很长时间的,开始没有redux的时候,使用原生的组件可以完成任务,但是在redux掺和进来...
- 背景 各位童鞋有木有感觉官方文档很坑啊,根据官网的描述,首先在chocolate就直接卡死了,VPN没什么卵用,于...
- (1)基本的语法结构 (2)组件的生命周期 生命周期小应用: 效果图: (3) Props(属性) 我们可以把任意...
- 1.Layout with Flexbox 2.Handling Text Input 基础组件---TextIn...
- 相信配置好rn环境的朋友,在初始化好第一个项目AwesomeProject后会忍不住尝试动手改一改、试一试。下面还...