Android 动画以view中心点旋转动画
生活随笔
收集整理的這篇文章主要介紹了
Android 动画以view中心点旋转动画
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
旋轉180度
?
Animation anim =new RotateAnimation(0f, 180f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); anim.setFillAfter(true); // 設置保持動畫最后的狀態 anim.setDuration(500); // 設置動畫時間 anim.setInterpolator(new AccelerateInterpolator()); // 設置插入器 anim.setAnimationListener(new Animation.AnimationListener() {@Overridepublic void onAnimationStart(Animation animation) {Log.i("lgq", "re==logtest===onAnimationStart==");}@Overridepublic void onAnimationEnd(Animation animation) {Log.i("lgq", "re==logtest===onAnimationEnd==" );}@Overridepublic void onAnimationRepeat(Animation animation) {Log.i("lgq", "re==logtest===onAnimationRepeat==");} }); localstatusfreeview.startAnimation(anim);?
反轉180度
?
Animation anim =new RotateAnimation(180f, 0f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); anim.setFillAfter(true); // 設置保持動畫最后的狀態 anim.setDuration(500); // 設置動畫時間 anim.setInterpolator(new AccelerateInterpolator()); // 設置插入器 localstatusfreeview.startAnimation(anim);?
2、 圓形圖片循環旋轉動畫
private ObjectAnimator mObjectAnimator; private long mCurrentPlayTime; private boolean ifop=true; public static int rotationTime = 20000; /*** 設置旋轉的動畫*/ public void setAnimation() {if (mObjectAnimator == null) {mObjectAnimator = ObjectAnimator.ofFloat(tvHobby, "rotation", 0, 360);mObjectAnimator.setDuration(rotationTime);mObjectAnimator.setInterpolator(new LinearInterpolator());mObjectAnimator.setRepeatCount(ValueAnimator.INFINITE);}startAnimation(); }?
/*** 暫停旋轉*/ private void stopAnimation() {mCurrentPlayTime = mObjectAnimator.getCurrentPlayTime();mObjectAnimator.cancel(); }/*** 開始旋轉*/ private void startAnimation() {mObjectAnimator.start();mObjectAnimator.setCurrentPlayTime(mCurrentPlayTime); }附:開啟暫停
if (ifop) {stopAnimation();ifop = !ifop; } else {startAnimation();ifop = !ifop; }總結
以上是生活随笔為你收集整理的Android 动画以view中心点旋转动画的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 概率论和数理统计知识点汇总
- 下一篇: Android 可开关式顶部下拉view