Android属性动画——平移,旋转,渐变,缩放及属性动画的生命周期
【Android属性动画——平移,旋转,渐变,缩放及属性动画的生命周期】操作如下:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
l = (LinearLayout)findViewById(R.id.l);
l.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {//平移
ObjectAnimator translationX = new ObjectAnimator().ofFloat(l,"translationX",0,600f);
ObjectAnimator translationY = new ObjectAnimator().ofFloat(l,"translationY",0,0);
AnimatorSet animatorSet = new AnimatorSet();
//组合动画
animatorSet.playTogether(translationX,translationY);
//设置动画
animatorSet.setDuration(10000);
//设置动画时间
animatorSet.start();
//启//// 旋转
//ObjectAnimator ra = ObjectAnimator.ofFloat(l,"rotation", 0f, 360f);
//ra.setDuration(3000);
//ra.start();
//// 缩放
//AnimatorSet animatorSetsuofang = new AnimatorSet();
//组合动画
//ObjectAnimator scaleX = ObjectAnimator.ofFloat(l, "scaleX", 0, 1f);
//ObjectAnimator scaleY = ObjectAnimator.ofFloat(l, "scaleY", 0, 1f);
//animatorSetsuofang.setDuration(5000);
//animatorSetsuofang.setInterpolator(new DecelerateInterpolator());
//animatorSetsuofang.play(scaleX).with(scaleY);
//两个动画同时开始//// 渐变
//ObjectAnimator anim = ObjectAnimator.ofFloat(l, "alpha", 1f, 0.1f, 1f, 0.5f, 1f);
//anim.setDuration(10000);
// 动画持续时间
//anim.start();
// 动画的监听事件
animatorSet.addListener(new Animator.AnimatorListener() {
@Override
public void onAnimationStart(Animator animation) {
Log.d("动画开始","");
}@Override
public void onAnimationEnd(Animator animation) {
Log.d("动画结束,跳转","");
}@Override
public void onAnimationCancel(Animator animation) {
Log.d("动画取消","");
}@Override
public void onAnimationRepeat(Animator animation) {
Log.d("动画重复","");
}
});
}
});
}
推荐阅读
- 第6.2章(设置属性)
- android第三方框架(五)ButterKnife
- Android中的AES加密-下
- 带有Hilt的Android上的依赖注入
- android|android studio中ndk的使用
- Android事件传递源码分析
- RxJava|RxJava 在Android项目中的使用(一)
- Android7.0|Android7.0 第三方应用无法访问私有库
- 深入理解|深入理解 Android 9.0 Crash 机制(二)
- android防止连续点击的简单实现(kotlin)