2017-11-15 5 views
0

TouchableOpacitydocsによれば、エンド不透明度を変更するactiveOpacity支柱がある、任意の不透明度にコンポーネントをアニメーション化するsetOpacityTo機能があります。アニメーションの速さを変えることについては何もないようです。ネイティブリアクト:カスタマイズTouchableOpacityアニメーション速度

アニメーションの速度を変更するにはどうすればよいですか?これのための小道具はありますか?私は自分のカスタムを作る必要がありますAnimated.View?メソッドの持続一部で...

setOpacityTo(value: number, duration: number) 

が反応ネイティブ思い

答えて

1

setNativeProps with TouchableOpacityを使用して不透明度をアニメーション化するために、バックグラウンドでsetOpacityToを使用しています。

setOpacityTo(value) { 
    // Redacted: animation related code 
    this.refs[CHILD_REF].setNativeProps({ 
    opacity: value 
    }); 
}, 

このようにしたい場合は、独自のアニメーションイベントを作成することもできます。ここにはhow touchable opacity uses setOpacityToがあり、useNativeDrivertrueに設定してください。

setOpacityTo: function(value: number, duration: number) { 
    Animated.timing(
     this.state.anim, 
     { 
     toValue: value, 
     duration: duration, 
     easing: Easing.inOut(Easing.quad), 
     useNativeDriver: true, 
     } 
    ).start(); 
    }, 
+0

'TouchOnPacity'が押されたときにデフォルトのアニメーションを上書きするために' setOpacityTo'を利用する方法は知っていますか? –

+0

@GabrielWest私は正しいパスであなたを設定する必要がありますいくつかのちょっとしたビットで私の答えを更新しました。 –

関連する問題