记我的WiFi音箱之一个网络在线播放及本地播放音乐器(二)

今天就开始上代码了,今天是讲Animation动画。明天继续讲解ViewPager+Fragment替代Tabhost

关于动画的实现,Android提供了Animation,在Android SDK介绍了2种Animation模式:

  1. Tween Animation:通过对场景里的对象不断做图像变换(平移、缩放、旋转)产生动画效果,即是一种渐变动画;

  2. Frame Animation:顺序播放事先做好的图,是一种画面转换画。

这里讲一下Tween Animation

动画类型
下面先来看看Android提供的动画类型。Android的animation由四种类型组成

在XML文件中:
alpha 渐变透明度动画效果
scale 渐变尺寸伸缩动画效果
translate 画面转换位置移动动画效果
rotate 画面转移旋转动画效果
在Java 源码中定义了相应的类,可以使用这些类的方法来获取和操作相应的属性:

AlphaAnimation渐变透明度动画效果
ScaleAnimation渐变尺寸伸缩动画效果
TranslateAnimation画面转换位置移动动画效果
RotateAnimation画面转移旋转动画效果

Tween Animation
一个tween动画将对视图对象中的内容进行一系列简单的转换(位置,大小,旋转,透明性)。如果你有一个文本视图对象,你可以移动它,旋转它,让它变大或让它变小,如果文字下面还有背景图像,背景图像也会随着文件进行转换。

使用XML来定义Tween Animation

共有属性

alpha

scale

translate

rotate

ShowActivity.java

public class ShowActivity extends Activity implements AnimationListener {

    private Animation alphaAnimation;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        setContentView(R.layout.activity_show);

        ImageView iv=(ImageView)findViewById(R.id.index);
         alphaAnimation = AnimationUtils.loadAnimation(this, R.anim.fade_in);   
            alphaAnimation.setFillEnabled(true); //启动Fill保持   
            alphaAnimation.setFillAfter(false);  //设置动画的最后一帧是保持在View上面   
            iv.setAnimation(alphaAnimation);   
            alphaAnimation.setAnimationListener(this);  //为动画设置监听   


    }

    @Override
    public void onAnimationEnd(Animation arg0) {
        // TODO Auto-generated method stub

     Intent intent=new Intent(this,MainActivity.class);               
     startActivity(intent);
     this.finish();
    }

    @Override
    public void onAnimationRepeat(Animation arg0) {
        // TODO Auto-generated method stub

    }

    @Override
    public void onAnimationStart(Animation arg0) {
        // TODO Auto-generated method stub

    }

    @Override  
    public boolean onKeyDown(int keyCode, KeyEvent event) {   
        //在欢迎界面屏蔽BACK键   
        if(keyCode==KeyEvent.KEYCODE_BACK) {   
            return false;   
        }   
        return false;   
    }   


}

fade_in.xml

<?xml version="1.0" encoding="utf-8"?>
<alpha xmlns:android="http://schemas.android.com/apk/res/android"
    android:duration="6000"
    android:fromAlpha="0.0"
    android:toAlpha="1.0" />

activity_show.xml 里面就一个带Id的ImageView组件在里面

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值