Android Property Animation属性动画:rotation旋转(2)

来源:互联网 发布:刷机会不会丢失数据 编辑:程序博客网 时间:2024/06/05 20:14


Android Property Animation属性动画:rotation旋转(2)

附录的文章1,说明了如何简单的实现一个Android的属性动画Property Animation渐变透明。
本文以Android属性动画的旋转为例,说明如何实现Android属性动画Property Animation的旋转。和附录的文章1为基础,只需要在附录文章1的基础上略加修改,即可实现Property Animation属性动画的旋转。

package zhangphil.anim;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.Menu;import android.view.MenuItem;import android.widget.TextView;public class MainActivity extends Activity {private TextView text;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);text = (TextView) findViewById(R.id.text);}// 动画实际执行private void startPropertyAnim() {// 第二个参数"rotation"表明要执行旋转// 0f -> 360f,从旋转360度,也可以是负值,负值即为逆时针旋转,正值是顺时针旋转。ObjectAnimator anim = ObjectAnimator.ofFloat(text, "rotation", 0f, 360f);// 动画的持续时间,执行多久?anim.setDuration(5000);// 回调监听anim.addUpdateListener(new AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {float value = (Float) animation.getAnimatedValue();Log.d("zhangphil", value + "");}});// 正式开始启动执行动画anim.start();}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {int id = item.getItemId();if (id == R.id.action_anim) {// 此处正式启动属性动画startPropertyAnim();return true;}return super.onOptionsItemSelected(item);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {getMenuInflater().inflate(R.menu.main, menu);return true;}}


附录文章:
1,《Android Property Animation属性动画初识:透明渐变(1)》链接地址:http://blog.csdn.net/zhangphil/article/details/50484224

1 0