diff options
author | Jorge Ruesga <jorge@ruesga.com> | 2013-11-07 04:15:10 +0100 |
---|---|---|
committer | Jorge Ruesga <jorge@ruesga.com> | 2013-11-07 04:15:10 +0100 |
commit | 72aedd7b2fd64c593de971fa9d89c0251930b72d (patch) | |
tree | 6a3f1c33365d71565b6613d57e805667b09c14bd /src/org/cyanogenmod/wallpapers/photophase | |
parent | 759a39f9b41a71a3eda502241f527e182e09936a (diff) | |
download | android_packages_wallpapers_PhotoPhase-72aedd7b2fd64c593de971fa9d89c0251930b72d.tar.gz android_packages_wallpapers_PhotoPhase-72aedd7b2fd64c593de971fa9d89c0251930b72d.tar.bz2 android_packages_wallpapers_PhotoPhase-72aedd7b2fd64c593de971fa9d89c0251930b72d.zip |
Fix disposition view-in animation on aosp 4.4
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Diffstat (limited to 'src/org/cyanogenmod/wallpapers/photophase')
-rw-r--r-- | src/org/cyanogenmod/wallpapers/photophase/widgets/DispositionView.java | 28 |
1 files changed, 13 insertions, 15 deletions
diff --git a/src/org/cyanogenmod/wallpapers/photophase/widgets/DispositionView.java b/src/org/cyanogenmod/wallpapers/photophase/widgets/DispositionView.java index 87e3999..a2a3abc 100644 --- a/src/org/cyanogenmod/wallpapers/photophase/widgets/DispositionView.java +++ b/src/org/cyanogenmod/wallpapers/photophase/widgets/DispositionView.java @@ -29,8 +29,7 @@ import android.view.Gravity; import android.view.View; import android.view.View.OnLongClickListener; import android.view.animation.AccelerateInterpolator; -import android.view.animation.Animation; -import android.view.animation.AnimationUtils; +import android.view.animation.BounceInterpolator; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.RelativeLayout; @@ -376,23 +375,22 @@ public class DispositionView extends RelativeLayout implements OnLongClickListen v.setX(r.left + padding); v.setY(r.top + padding); v.setOnLongClickListener(this); - if (animate) { - v.setVisibility(View.INVISIBLE); - } addView(v, params); // Animate the view if (animate) { - post(new Runnable() { - @Override - public void run() { - Animation anim = AnimationUtils.loadAnimation( - getContext(), R.anim.display_with_bounce); - anim.setFillBefore(true); - anim.setFillAfter(true); - v.startAnimation(anim); - } - }); + List<Animator> animators = new ArrayList<Animator>(); + animators.add(ObjectAnimator.ofFloat(v, "scaleX", 0.0f, 1.0f)); + animators.add(ObjectAnimator.ofFloat(v, "scaleY", 0.0f, 1.0f)); + animators.add(ObjectAnimator.ofFloat(v, "alpha", 0.0f, 1.0f)); + animators.add(ObjectAnimator.ofFloat(v, "alpha", 0.0f, 1.0f)); + + AnimatorSet animSet = new AnimatorSet(); + animSet.playTogether(animators); + animSet.setDuration(getResources().getInteger(R.integer.disposition_show_anim)); + animSet.setInterpolator(new BounceInterpolator()); + animSet.setTarget(v); + animSet.start(); } return v; |