最近刚刚在做一个应用,对于我这么一个刚刚出来工作不久的菜鸟,为了把在这个应用中学到的东西记起来,所以开通了这博客来记录在这几个月中学会的东西!好了。不说废话,开始进入正题。一个应用一定要有一个开始动画,而这个动画可以静态的(像微博),可以是动的。而动的最简单就是用animation实现。。思路是先在一个xml中定义你要实现的效果,然后直接在activity中调用即可
activity调用代码很短,主要部分在xml实现,activity代码调用如下
ImageView splash=(ImageView) findViewById(R.id.splash);
Animation animation =AnimationUtils.loadAnimation(this, R.anim.alpha_scale_translate);
splash.setAnimation(animation);
而其中的R.anim.alpha_scale_translate如下
<?xml version="1.0" encoding="utf-8"?>
<set
xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false"
>
<alpha
android:interpolator="@android:res/anim/accelerate_decelerate_interpolator"
android:fromAlpha="0.5"
android:toAlpha="1.0"
android:duration="3000"
>
</alpha>
<scale
android:interpolator="@android:res/anim/accelerate_decelerate_interpolator"
android:fromXScale="1.0"
android:toXScale="1.5"
android:fromYScale="1.0"
android:toYScale="1.5"
android:pivotX="50%"
android:pivotY="50%"
android:duration="6000"
></scale>
</set>
上面的xml效果就是3秒内activity中的splash(一个imageview)按xml的效果三秒内从半透明度到不透明,同时间在6秒内从原大小放大到1.5倍
此外,上面的效果是动画完毕会瞬间恢复到原来的大小,这时如果你想让它保持最后的效果的话,只需在activity中添加一行代码即可
animation.setFillAfter(true);
由于不会录制动态图片,所以效果图就不上传了。。