• Android小项目之五 splash动画效果


    ------- 源自梦想永远是你IT事业的好友、只是勇敢地说出我学到! ----------

    按惯例,写在前面的:可能在学习Android的过程中,大家会和我一样,学习过大量的基础知识,很多的知识点也都能说出了123来,但是这些孤立的点终究显得太零散了,因此,我想从今天开始,以最经典的手机安全卫士项目为例,自己锻炼一下,也是想和大家交流交流,希望大家都能给出见解,共同进步。


    五、splash动画效果

    1.实现splash界面至少延迟2秒。
    有一些小问题,若客户端的版本与服务端的一样,那么splash界面出现一瞬间就消失了,直接进入主界面。
    这时候,我们只需在新线程中加Thread.sleep(2000);,就能让splash至少出现两秒钟。
    但是这又带来了新问题,如果连服务器本身就需要很长时间,这样又让其休眠两秒,这样就显得太卡了。
    这时候就需要做一下判断,看检查版本所需要的时间是不是大于2000,再做处理。

    具体代码:

    					long startTime = System.currentTimeMillis();(新线程开始时)
    					long endTime = System.currentTimeMillis();
    					
    					//得到方法执行的时间
    					long dTime = endTime-startTime;
    					
    					//如果执行的时间小于2秒钟,使之达到2秒
    					if(dTime<2000){
    						try {
    							Thread.sleep(2000-dTime);
    						} catch (InterruptedException e1) {
    							e1.printStackTrace();
    						}
    					}


    2.动画效果
    在布局的<RelativeLayout 下增加id:
    			android:id="@+id/rl_splash_root"

    在activity中找到这个根节点。
    在onCreate中:
    		/*
    		 * 做透明度变化的动画效果
    		 */
    		AlphaAnimation alphaAnimation = new AlphaAnimation(0.2f, 1.0f);	//设透明度(from,to)
    		alphaAnimation.setDuration(2000);								//设置延迟时间
    		rl_splash_root.startAnimation(alphaAnimation);					//开始动画



    这时,我们就可以看到一个透明度渐变的效果。

    ------- 源自梦想永远是你IT事业的好友、只是勇敢地说出我学到! ----------

    Le王冬冬 博客分享地址: http://www.cnblogs.com/dongdong230/ 每个人都应做一天攻城狮
  • 相关阅读:
    ClickHouse副本机制简介
    【使用分享】Hive分区表那些事
    华为云CDN如何提高缓存命中率
    [导入]dtc 与 iis 的关系
    npm启动项目出现gyp ERR! find VS could not use PowerShell to find Visual Studio 2017 or newer错误信息的解决方案
    【做题记录】Atcoder 做题记录
    【做题记录】CodeForces 做题记录
    【考试总结】20220519
    AGC056B Range Argmax
    THUSC2022游记
  • 原文地址:https://www.cnblogs.com/dongdong230/p/4183099.html
Copyright © 2020-2023  润新知