我正在尝试对某些字体进行动画处理,这就是代码中的内容:
const labelStyle = {
position: 'absolute',
left: 0,
top: this.animatedIsFocused.interpolate({
inputRange: [0, 1],
outputRange: [10, -10],
}),
fontSize: this.animatedIsFocused.interpolate({
inputRange: [0, 1],
outputRange: [25, 14],
}),
color: this.animatedIsFocused.interpolate({
inputRange: [0, 1],
outputRange: ['black', 'gray'],
}),
fontFamily: this.animatedIsFocused.interpolate({
inputRange: [0, 1],
outputRange: ['montserratBold', 'montserratRegular'],
}),
};
我这样称呼:
<Animated.Text style={labelStyle}>{labelText}</Animated.Text>
我正在使用的字体已正确加载,我可以在应用程序中的任何位置使用它们,但在动画中不能使用它们:
loadResourcesAsync = async () => {
return Promise.all([
Font.loadAsync({
...Icon.Ionicons.font,
montserratRegular: require('./assets/fonts/Montserrat-Regular.ttf'),
montserratSemibold: require('./assets/fonts/Montserrat-SemiBold.ttf'),
montserratBold: require('./assets/fonts/Montserrat-Bold.ttf'),
}),
]);
};
错误:
不变违反:模式montserratBold和montserratRegular无效
有什么想法吗?