SplashActivity闪屏页的实现

SplashActivity闪屏页的实现

思路是使用handler发送延迟消息,达到留在闪屏页一段事件的效果。
判断程序是否是第一次运行 是则从闪屏页到引导页 不是就从闪屏页直接到达主页面

StaticClass

//闪屏业延时
public static final int HANDLER_SPLASH = 1001;
//判断程序是否是第一次运行
public static final String SHARE_IS_FIRST = "isFirst";

在oncreate()方法中初始化view

  private void initView() {
        //延时2000ms
        handler.sendEmptyMessageDelayed(StaticClass.HANDLER_SPLASH, 2000);



    }


 private boolean isFirst() {
        boolean isFirst = ShareUtils.getBoolean(this,StaticClass.SHARE_IS_FIRST,true);
        if(isFirst){
            ShareUtils.putBoolean(this,StaticClass.SHARE_IS_FIRST,false);
            //是第一次运行
            return true;
        }else {
            return false;
        }

    }

主要实现逻辑代码


    private Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            super.handleMessage(msg);
            switch (msg.what) {
                case StaticClass.HANDLER_SPLASH:
                    //判断程序是否是第一次运行
                    if (isFirst()) {
                        startActivity(new Intent(SplashActivity.this, GuideActivity.class));
                    } else {
                        startActivity(new Intent(SplashActivity.this, LoginActivity.class));
                    }
                    finish();
                    break;
            }
        }
    };

猜你喜欢

转载自blog.csdn.net/qq_34591917/article/details/79965441