android——ObjectAnimator动画(一)
16lz
2021-01-26
直接贴上集中用法
package com.example.test;import com.example.test.views.CircleView;import android.animation.Animator;import android.animation.AnimatorSet;import android.animation.Keyframe;import android.animation.ObjectAnimator;import android.animation.PropertyValuesHolder;import android.annotation.SuppressLint;import android.app.Activity;import android.os.Bundle;import android.view.View;public class CircleViewActivity extends Activity { private com.example.test.views.CircleView cv ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_circleview); move(); } public void move(){ cv = (CircleView)findViewById(R.id.cv); // ObjectAnimator.ofFloat(cv, "translationX", 0F,200F).setDuration(1000).start();// ObjectAnimator.ofFloat(cv, "translationY", 0F,200F).setDuration(1000).start();// ObjectAnimator.ofFloat(cv, "rotation", 0F,360F).setDuration(1000).start();// PropertyValuesHolder holder = PropertyValuesHolder.ofFloat("rotation", 0F,360F);// PropertyValuesHolder holder1 = PropertyValuesHolder.ofFloat("translationY", 0F,200F);// PropertyValuesHolder holder2 = PropertyValuesHolder.ofFloat("translationX", 0F,200F);// ObjectAnimator.ofPropertyValuesHolder(cv, holder,holder1,holder2).setDuration(1000).start(); // ObjectAnimator a1 =ObjectAnimator.ofFloat(cv, "translationX", 0F,200F);// ObjectAnimator a2 =ObjectAnimator.ofFloat(cv, "translationY", 0F,200F);// ObjectAnimator a3 =ObjectAnimator.ofFloat(cv, "rotation", 0F,360F);// AnimatorSet set = new AnimatorSet(); set.playSequentially(a1,a2,a3); set.playTogether(a1,a2,a3); //展示方式不能一起使用。// set.play(a2).before(a1); //顺序控制// set.play(a2).before(a3);// set.setDuration(1000);// set.start(); Keyframe kf0 = Keyframe.ofFloat(0f, 0f); Keyframe kf1 = Keyframe.ofFloat(.5f, 360f); Keyframe kf2 = Keyframe.ofFloat(.2f, 720f); PropertyValuesHolder pvhRotation = PropertyValuesHolder.ofKeyframe("rotation", kf0, kf1, kf2); ObjectAnimator rotationAnim = ObjectAnimator.ofPropertyValuesHolder(cv, pvhRotation); rotationAnim.setDuration(5000); rotationAnim.start();// ObjectAnimator.ofArgb(cv, ACCESSIBILITY_SERVICE, 244).setDuration(1000).start(); }}
转载于:https://www.cnblogs.com/shoneworn/p/5029337.html
更多相关文章
- android sharedpreferences封装简单实用
- Android:StartActivies(Intent[] intents)用法
- 【Android】LiveData 用法及源码解析
- Android(安卓)Selector用法小记
- android style用法
- Android(安卓)ApiDemos示例解析(144):Views->Layouts->LinearLay
- Android(安卓)ObjectAnimator基础用法
- Android(安卓)NDK用法
- Android(安卓)中的 LayoutInflater类