React native 如何使用钩子制作动画?
大家好,我正在用钩子和功能组件进行动画实验 正如预期的那样,它工作得很好,但我对我的代码没有什么疑惑 让我解释一下React native 如何使用钩子制作动画?,react-native,React Native,大家好,我正在用钩子和功能组件进行动画实验 正如预期的那样,它工作得很好,但我对我的代码没有什么疑惑 让我解释一下 const [ProgressAnimation] = useState(new Animated.Value(0)); const [progress, setProgress] = useState(0); 使用此选项存储动画值 React.useEffect(() => { Animated.timing(ProgressAnimation, {
const [ProgressAnimation] = useState(new Animated.Value(0));
const [progress, setProgress] = useState(0);
使用此选项存储动画值
React.useEffect(() => {
Animated.timing(ProgressAnimation, {
toValue: progress,
duration: 500,
}).start();
});
使用effect来处理更新进度条,因此进度
是每500ms更新一次本地状态
const animatedWidth = ProgressAnimation.interpolate({
inputRange: [0, totalProgress],
outputRange: ['0%', '100%'],
});
我的问题是,progress
值设置为每500毫秒一次,所以我每500毫秒渲染一次。我做得对,或者需要更改流
对不起我的英语 你能为你的动画增加一点细节吗?我不太清楚如何设置
progress
和totalProgress
以及设置它们时预期的效果。此外,由于您从未使用<代码> SETTER <代码>一半的代码> PrimeStudioStudio状态,您可能会考虑<代码> USERF <代码>,而不是<代码> UsStuts<代码>。您能为您的动画添加更详细的您想要的结果吗?我不太清楚如何设置progress
和totalProgress
以及设置它们时预期的效果。此外,由于您从未使用<代码> SETTER <代码>一半的代码> PrimeStudioStudio状态,您可能会考虑<代码> USERFE/COD>而不是<代码> UsStuts<代码>。