使用新的ViewCompat.animate没有setFillAfter(false)这样的东西 - 它似乎默认设置为true,因为动画完成后视图不会恢复。任何人都知道如何解决这个问题,以便恢复我的视图状态?
答案 0 :(得分:2)
setFillAFter
来自旧的动画系统,它只是将一个Matrix应用于视图画布并在末尾删除矩阵。新动画系统实际上是在物理上改变视图本身。
说,如果你想在它结束时恢复动画,你必须使用Runnable在动画结束时执行。这样的事情:
(例如,如果您要设置X值的动画)
final float initialValue = ViewCompat.getX(view);
... do your animation code
.withEndAction(new Runnable(){
@Override
public void run(){
ViewCompat.setX(view, initialValue);
}
};)