您的位置:首页 > 移动开发 > Android开发

Android-全屏动画

2016-03-31 23:51 405 查看
        通常我们在微信聊天的时候,输入特定的词语,如“生日快乐”,“圣诞快乐”的时候,会出现全屏的动画表情,觉得很好玩。最近在公司实习期间,由于任务比较松,空闲时间还是很多的,想想办法模仿了一下这个效果,哈哈。

        效果图(由于懒得去找表情包,所以就用安卓 图标代替了~。~)



       总体来说,这个动画效果难度不大,难点在于:

       1 如何实现动画效果

          Android3.0之后引入了属性动画,这让我们在实现一些动画的时候,更加自如和方便。这里每一个小视图都是一个ImageView,我们为其设置属性动画,通过不断改变其坐标(x,y),来实现动画。

 

       2 如何实现不同速度

          通过随机数获取不同的加速度。

   

       3 如何让动画局部填充整个界面

         

/**
* 挂载到某个Activity的最顶层
* @param activity
*/
public void attachActivity(Activity activity) {
ViewParent parent = getParent();
if(parent != null && parent instanceof ViewGroup) {
ViewGroup parentView = (ViewGroup) parent;
parentView.removeView(this);
}
FrameLayout decor = (FrameLayout)activity.getWindow().getDecorView();
FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(
FrameLayout.LayoutParams.MATCH_PARENT,
FrameLayout.LayoutParams.MATCH_PARENT);
decor.addView(this, lp);
mIsShowing = true;
}


        

         动画效果看起来还是有些区别的,其实就是动画的数量,以及每秒产生视图的个数的差别。

         附上代码:源码
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: