您的位置:首页 > 移动开发 > Objective-C

属性动画入门

2016-12-20 19:53 232 查看
直接看代码就能明白,布局文件是一个ImageView和五个按钮。下面就是监听事件。
@OnClick({R.id.btn_translate, R.id.btn_scale, R.id.btn_rotate, R.id.btn_alpha, R.id.btn_set})public void onClick(View view) {ObjectAnimator animator=null;switch (view.getId()) {case R.id.btn_translate://位移animator=ObjectAnimator.ofFloat(imgObjectAnimation,"translationX",0f,200f).setDuration(1000*2);//                animator=ObjectAnimator.ofFloat(imgObjectAnimation,"translationY",0f,200f).setDuration(1000*2);//                animator=ObjectAnimator.ofFloat(imgObjectAnimation,"X",200f).setDuration(1000*2);//                animator=ObjectAnimator.ofFloat(imgObjectAnimation,"Y",200f).setDuration(1000*2);break;case R.id.btn_scale://拉伸animator=ObjectAnimator.ofFloat(imgObjectAnimation,"scaleX",1f,2f).setDuration(1000*2);//                animator=ObjectAnimator.ofFloat(imgObjectAnimation,"scaleY",1f,2f).setDuration(1000*2);break;case R.id.btn_rotate://旋转animator=ObjectAnimator.ofFloat(imgObjectAnimation,"rotation",0f,360f).setDuration(1000*2);break;case R.id.btn_alpha://透明度animator=ObjectAnimator.ofFloat(imgObjectAnimation,"alpha",1f,0f).setDuration(1000*2);break;case R.id.btn_set:ObjectAnimator animator1=ObjectAnimator.ofFloat(imgObjectAnimation,"translationX",0f,200f).setDuration(1000*2);ObjectAnimator animator2=ObjectAnimator.ofFloat(imgObjectAnimation,"scaleX",1f,2f).setDuration(1000*2);ObjectAnimator animator3=ObjectAnimator.ofFloat(imgObjectAnimation,"rotation",0f,360f).setDuration(1000*2);ObjectAnimator animator4=ObjectAnimator.ofFloat(imgObjectAnimation,"alpha",1f,0f).setDuration(1000*2);AnimatorSet animatorSet=new AnimatorSet();//同时播放//                animatorSet.playTogether(animator1,animator2,animator3,animator4);//顺序播放//                animatorSet.playSequentially(animator1,animator2,animator3,animator4);//自由排序//                animatorSet.play(animator2).with(animator1).after(animator4);//集合List<Animator> animatorList=new ArrayList<>();animatorList.add(animator1);animatorList.add(animator2);animatorList.add(animator3);animatorList.add(animator4);animatorSet.playSequentially(animatorList);animatorSet.setInterpolator(new LinearInterpolator());animatorSet.start();return;default:break;}animator.start();}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息