当用户刷出一个元素并将其从列表中删除时,我试图添加一个平滑的动画。
它在iOS上运行正常,但根本无法在Android上运行。
这是我在构造函数中放入的内容
constructor() {
super();
if (Platform.OS === 'android') {
UIManager.setLayoutAnimationEnabledExperimental &&
UIManager.setLayoutAnimationEnabledExperimental(true);
}
}
这是我在删除方法中的代码
removeRecipient = ({ item: { id, received_vaults_count: vaults } }: Object, rowMap) => {
if (!vaults) {
rowMap[id].closeRow(); // close deleted row
//show notification default duration 1 second
notify(i18n.t('recipientsDashboard.shortDeleteNotification'));
LayoutAnimation.configureNext(LayoutAnimation.Presets.easeInEaseOut);
this.props.removeById(id); // remove recipient by id from server
return;
}
const DURATION = 3; // time in seconds
notify(i18n.t('recipientsDashboard.longDeleteNotification'), DURATION);
setTimeout(() => {
rowMap[id].closeRow();
}, 1000);
};
有没有人遇到这个问题?
答案 0 :(得分:1)
这是我用来使其工作的一些代码。
react-native-cli:2.0.1 react-native:0.59.3
{构造函数(props){ 超级(道具);
if (UIManager) {
return UIManager.setLayoutAnimationEnabledExperimental && UIManager.setLayoutAnimationEnabledExperimental(true);
}
}
componentWillUpdate() {
LayoutAnimation.spring();
}}