feat: add API clearAnimation

This commit is contained in:
pengfei.zhou
2021-04-21 18:59:29 +08:00
committed by osborn
parent 93293b099f
commit 5c20680c4c
12 changed files with 155 additions and 26 deletions

View File

@@ -314,6 +314,15 @@ class View {
}
});
}
cancelAnimation(context, animation) {
return this.nativeChannel(context, "cancelAnimation")(animation.id).then(() => {
this.__dirty_props__.translationX = this.translationX || 0;
this.__dirty_props__.translationY = this.translationY || 0;
this.__dirty_props__.scaleX = this.scaleX || 1;
this.__dirty_props__.scaleY = this.scaleY || 1;
this.__dirty_props__.rotation = this.rotation || 0;
});
}
}
__decorate$d([
Property,
@@ -1051,6 +1060,7 @@ class Animation {
this.changeables = new Map;
this.duration = 0;
this.fillMode = exports.FillMode.Forward;
this.id = uniqueId("Animation");
}
toModel() {
const changeables = [];
@@ -1069,7 +1079,8 @@ class Animation {
repeatCount: this.repeatCount,
repeatMode: this.repeatMode,
fillMode: this.fillMode,
timingFunction: this.timingFunction
timingFunction: this.timingFunction,
id: this.id,
};
}
}
@@ -1119,13 +1130,13 @@ class TranslationAnimation extends Animation {
super();
this.translationXChangeable = {
key: "translationX",
fromValue: 1,
toValue: 1,
fromValue: 0,
toValue: 0,
};
this.translationYChangeable = {
key: "translationY",
fromValue: 1,
toValue: 1,
fromValue: 0,
toValue: 0,
};
this.changeables.set("translationX", this.translationXChangeable);
this.changeables.set("translationY", this.translationYChangeable);
@@ -1228,6 +1239,7 @@ class AnimationSet {
constructor() {
this.animations = [];
this._duration = 0;
this.id = uniqueId("AnimationSet");
}
addAnimation(anim) {
this.animations.push(anim);
@@ -1245,6 +1257,7 @@ class AnimationSet {
return e.toModel();
}),
delay: this.delay,
id: this.id,
};
}
}