android 属性动画
来源:互联网 发布:js获取电子秤串口数据 编辑:程序博客网 时间:2024/06/08 04:33
package com.example.objectanimator;import android.animation.Animator;import android.animation.AnimatorListenerAdapter;import android.animation.AnimatorSet;import android.animation.ObjectAnimator;import android.animation.ValueAnimator;import android.animation.ValueAnimator.AnimatorUpdateListener;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.view.View.OnClickListener;import android.view.animation.AccelerateDecelerateInterpolator;import android.view.animation.AccelerateInterpolator;import android.view.animation.LinearInterpolator;import android.widget.Button;import android.widget.TextView;/*********************************** * android 属性动画是在android 3.0出现的, * * 要想向低版本兼容可以使用开源框架nieoldandroid动画 * * * **********************************/public class MainActivity extends Activity {TextView textview;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);textview = (TextView) this.findViewById(R.id.textview);Button button = (Button) this.findViewById(R.id.button);button.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View arg0) {//textviewAnimation(textview);//valueAnimatorTest();//animationSet(textview);viewPropertyAnimatorTest(textview);}});}private void textviewAnimation(TextView textview){float startx = textview.getTranslationX();ObjectAnimator animator = ObjectAnimator.ofFloat(textview, "translationX", startx,-500f,startx);animator.setRepeatCount(100);//animator.setRepeatMode(RE);animator.setInterpolator(new LinearInterpolator());//线性运行animator.setDuration(1000);animator.start();}private void valueAnimatorTest(){ValueAnimator valueAnimator = ValueAnimator.ofFloat(0,94,9,58);//值的改变从0-94-9-58依次改变valueAnimator.setDuration(1000);//监听值的变化(哈哈)valueAnimator.addUpdateListener(new AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator anim) {float value = (float) anim.getAnimatedValue();Log.e("current value is ", value+"");}});valueAnimator.start();}//集合动画private void animationSet(TextView textview){float transx = (float) textview.getTranslationX();//动画集合对象AnimatorSet animatorSet = new AnimatorSet();//动画监听animatorSet.addListener(new AnimatorListenerAdapter(){@Overridepublic void onAnimationEnd(Animator animation) {Log.i("----------AnimatorSet anim is finish-------------", "aa");}}); ObjectAnimator transAnim = ObjectAnimator.ofFloat(textview, "translationX", transx,-500f,transx);//平移 ObjectAnimator alphaAnim = ObjectAnimator.ofFloat(textview, "alpha", 1f,0f,1f);//像素 ObjectAnimator rotateAnim = ObjectAnimator.ofFloat(textview, "rotation", 0f,360f);//旋转 animatorSet.play(rotateAnim).with(transAnim).after(alphaAnim);//先变化像素,再同时旋转动画和平移动画 animatorSet.setDuration(2000); animatorSet.setInterpolator(new AccelerateInterpolator());//加速 animatorSet.start();}//ViewPropertyAnimator 让动画变得更加简单(此属性是在android 3.1出现的)private void viewPropertyAnimatorTest(TextView textview){//textview.animate().alpha(0f).setDuration(2000);//将textview由不透明变为透明,动画时长为2秒textview.animate().alpha(0f).x(500f).y(500f).setDuration(2000);//将textview由不透明变为透明,动画时长为2秒}}
0 0
- Android动画--属性动画
- android动画 -- 属性动画
- Android动画-属性动画
- Android动画【属性动画】
- Android动画--属性动画
- android属性动画--布局动画
- Android 动画之属性动画
- Android中的动画,属性动画
- android-属性动画、视图动画
- Android动画之属性动画
- android动画 属性动画详解
- Android笔记----动画、属性动画
- Android动画之属性动画
- android 动画 之 属性动画
- Android动画之---属性动画
- Android动画之属性动画
- Android动画--属性动画--基础
- Android动画(三):属性动画
- 七大排序算法总结(含优化)
- JdbcTemplate.queryForList()方法各不同参数的详解
- Java的native关键字
- pthread_once
- c#_格式化输出
- android 属性动画
- 将方法作为方法的参数 —— 理解委托
- The import org.jdom cannot be resolved解决办法
- android mediaPlayer error (-38,0) 解决方法
- appiumforwindows的简单安装和启动(安卓)
- 【eXtremeComponents总结系列】使用总结
- Linux下RPM软件包的安装及卸载
- PHP学习笔记(六):通过ajax实时匹配后台的数据
- Git学习总结