-
ObjectAnimation查看全部
-
插值器的使用。差不多有六種。每一種的名稱和變化狀態!查看全部
-
常用方法查看全部
-
Interpolator圖示查看全部
-
ValueAnimator --數值發生器,可以實現很多很靈活的動畫效果; ObjectAnimator --繼承于ValueAnimator,可以很好滴使用屬性對話框架; AnimatorUpdateListener -- 用于動畫監聽器 AnimatorListenerAdapter-- 用于動畫監聽器 PropertyValuesHolder --用于控制動畫集合的顯示效果 Animatorset --用于控制動畫集合的顯示效果 TypeEvaluators ---值計算器,用于控制值變化的規律 Interprolators ---插值計算器,用于控制值變化的規律查看全部
-
常用屬性查看全部
-
常用方法、類 ValueAnimator --數值發生器,可以實現很多很靈活的動畫效果; ObjectAnimator --繼承于ValueAnimator,可以很好滴使用屬性對話框架; AnimatorUpdateListener -- 用于動畫監聽器 AnimatorListenerAdapter-- 用于動畫監聽器 PropertyValuesHolder --用于控制動畫集合的顯示效果 Animatorset --用于控制動畫集合的顯示效果 TypeEvaluators ---值計算器,用于控制值變化的規律 Interprolators ---插值計算器,用于控制值變化的規律查看全部
-
分享一下個人實現的環形菜單效果,按鈕是發散成圓排布的。 float y = (float) (r * Math.sin((Math.PI / 2) / (res.length - 2) * (i - 1))); float x = (float) (r * Math.cos((Math.PI / 2) / (res.length - 2) * (i - 1))); ObjectAnimator animator = ObjectAnimator.ofFloat(viewList.get(i), "translationY", 0f, -y); ObjectAnimator animator2 = ObjectAnimator.ofFloat(viewList.get(i), "translationX", 0f, x); x,y是通過數學知識計算出來的,改變x,y 的正負值,菜單彈出的方向也可以改變,其他的代碼和老師的相同。 動畫是速度interpolator,他可以定義動畫的速度變化,從而實現更加復雜的動畫效果。設置interpolator的方法: ObjectAnimator的setInterpolator()方法,參數可以傳遞各種各樣的interpolator,比如: objectAnimator.setInterpolator(new BounceInterpolator()); animator.addListener(new AnimatorListenerAdapter); //只要重寫一個事件 animator.setStartDelay(x);//依次彈出x為間隔毫秒 setInterpolator(new XXX);//設置動畫的速度變換查看全部
-
AccelerateDecelerateInterpolator 在動畫開始與結束的地方速率改變比較慢,在中間的時候加速 AccelerateInterpolator 在動畫開始的地方速率改變比較慢,然后開始加速 AnticipateInterpolator 開始的時候向后然后向前甩 AnticipateOvershootInterpolator 開始的時候向后然后向前甩一定值后返回最后的值 BounceInterpolator 動畫結束的時候彈起 CycleInterpolator 動畫循環播放特定的次數,速率改變沿著正弦曲線 DecelerateInterpolator 在動畫開始的地方快然后慢 LinearInterpolator 以常量速率改變 OvershootInterpolator 向前甩一定值后再回到原來位置查看全部
-
屬性動畫代碼查看全部
-
屬性動畫代碼查看全部
-
屬性動畫監聽事件查看全部
-
屬性動畫的各種顯示方式查看全部
-
動畫簡單步驟查看全部
-
ImageView imageView=(ImageView) this.findViewById(R.id.imageView1); ObjectAnimator animator1=ObjectAnimator.ofFloat(imageView, "rotation", 0,360F); ObjectAnimator animator2=ObjectAnimator.ofFloat(imageView, "translationX", 0F,400F); ObjectAnimator animator3=ObjectAnimator.ofFloat(imageView, "translationY", 0F,400F); AnimatorSet set=new AnimatorSet(); //set.playTogether(animator1,animator2,animator3); //三個屬性動畫同時進行 //set.playSequentially(animator1,animator2,animator3); //三個屬性動畫按順序進行播放 set.play(animator2).with(animator3); //先在X軸,Y軸同時平移,到達對角線時,在旋轉 set.play(animator1).after(animator2); set.setDuration(2000); //設置顯示時長 set.start(); //啟動動畫查看全部
舉報
0/150
提交
取消