欢迎界面设置显示版本号, 竖屏,及titlebar背景透明, 定时跳转

显示版本号:

 /**
     * 界面初始化
     */
    private void init() {

        tv_version = (TextView)findViewById(R.id.tv_version);

        try {
            //获取程序包信息

            PackageInfo info =getPackageManager().getPackageInfo(getPackageName(), 0);
            tv_version.setText("V"+info.versionName);


            } catch (PackageManager.NameNotFoundException e) {
                e.printStackTrace();
                tv_version.setText("V");
            } 

设置titlebar透明, 和竖屏:

 if (Build.VERSION.SDK_INT >= 21) {   //设置透明
            View decorView = getWindow().getDecorView();
            decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_LAYOUT_STABLE);
            getWindow().setStatusBarColor(Color.TRANSPARENT);
        }
        setContentView(R.layout.activity_weather);
//设置此界面为竖屏
        setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);

设置返回键无效:

 @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK){
            return  false;
        }
        return false;
    }

设置定时跳转活动:

mHandler.sendEmptyMessageDelayed(1, 4000);

 Handler mHandler = new Handler(new Handler.Callback() {
        @Override
        public boolean handleMessage(Message msg) {
            if (msg.what == 1) {
                Intent intent = new Intent(GuideActivity.this, MainActivity.class);
                startActivity(intent);
                finish();
            }
            return false;
        }
    });

或:

//让此界面延迟3秒后再跳转,timer中有一个线程,这个线程不断执行task
            Timer timer = new Timer();

            //TimerTask类表示一个在指定时间内执行的task
            TimerTask task = new TimerTask() {
                @Override
                public void run() {
                    Intent intent = new Intent(SplashActivity.this, MainActivity.class);
                    startActivity(intent);
                    SplashActivity.this.finish();
                }
            };
            timer.schedule(task, 1000);//设置这个task在延迟3秒后自动执行


猜你喜欢

转载自blog.csdn.net/qq_41405257/article/details/80708787
今日推荐