2016-06-01 17 views
0

enter image description here How to make this transform with React-Native?これを反応ネイティブでアニメーション化する方法は?

私はこの位置アニメーションコードの書き方を

Animated.timing(
       this.state.transform, 
       {toValue:[{ perspective: 850 }, 
          { translateX: -width * 0.24 }, 
          { rotateY: '60deg'}]}, 
      ).start(); 

constructor(props) { 
     super(props); 
     this.state={ 
      loaded:false, 

      transform:[{ perspective: 0 }, 
         { translateX: width }, 
         { rotateY: '0deg'}], 
      isMenuOpen:false, 
     } 
    } 

アニメイトこの静的な位置をしたいですか?

答えて

1

あなたにはアニメーションを使用することはできませんそんなやり方... Animatedあなたは次のことをする必要がありますリンクを見てください:

<MyComponent style={{ 
      transform:[{ perspective: this.state.anim.interpolate({ 
            inputRange: [0, 1], 
            outputRange: [0, 850], 
        })}, 
        { translateX: this.state.anim.interpolate({ 
            inputRange: [0, 1], 
            outputRange: [width, -width * 0.24], 
        })}, 
        { rotateY: this.state.anim.interpolate({ 
            inputRange: [0, 1], 
            outputRange: ["0deg", "60deg"], 
        })}], 
     }], 
    }}/> 

------ //// ------

  Animated.timing(this.state.anim, { 
       toValue: 1 
      }), 

------ //// --------

constructor(props) { 
     super(props); 
     this.state={ 
      anim: AnimateValue(0) 
     } 
    } 
+1

これは正しい方向ですが、1つのAnimated.Valueを再利用することでこれを単純化できます(3つのトランスフォームで同じ種類のタイミングアニメーションが必要な場合)。 –

+0

ありがとう、男よ!私は試してみます –

+0

@simchaエラーがありますが、どのように修正できますか? {"perspective":0} https://rnplay.org/apps/pBrrUg –

関連する問題