Android动画分类

转:https://www.jianshu.com/p/420629118c10

Github 例子:https://github.com/REBOOTERS/AndroidAnimationExercise


爆炸效果:https://github.com/tyrantgit/ExplosionField

  1.  //爆炸区域  
  2.     private ExplosionField mExplosionField;  
  3.   
  4.     @Override  
  5.     protected void onCreate(Bundle savedInstanceState) {  
  6.         super.onCreate(savedInstanceState);  
  7.         setContentView(R.layout.activity_main);  
  8.   
  9.         mExplosionField = ExplosionField.attach2Window(this);  
  10.         addListener(findViewById(R.id.root));  
  11.     }  
  12.   
  13.     //给需要爆炸的视图添加到爆炸区域中  
  14.     private void addListener(View root) {  
  15.   
  16.         //如果是view group 类型 就把它的子视图添加到区域中  
  17.         if (root instanceof ViewGroup) {  
  18.             ViewGroup parent = (ViewGroup) root;  
  19.             for (int i = 0; i < parent.getChildCount(); i++) {  
  20.                 addListener(parent.getChildAt(i));  
  21.             }  
  22.         }  
  23.   
  24.         //这里是View 类型的视图  
  25.         else {  
  26.   
  27.             //设置它为可点击的  
  28.             root.setClickable(true);  
  29.   
  30.             //添加监听器  
  31.             root.setOnClickListener(new View.OnClickListener() {  
  32.                 @Override  
  33.                 public void onClick(View v) {  
  34.   
  35.                     //爆炸该视图  
  36.                     mExplosionField.explode(v);  
  37.                     //取消注册其点击事件  
  38.                     v.setOnClickListener(null);  
  39.                 }  
  40.             });  
  41.         }  
  42.     }  

猜你喜欢

转载自blog.csdn.net/zwx_lucky/article/details/79114097