首页 > 编程语言 > Android activity实现延时跳转功能
2021
09-30

Android activity实现延时跳转功能

什么是Activity

Activity是一个Android的应用组件,它提供屏幕进行交互。每个Activity都会获得一个用于绘制其用户界面的窗口,窗口可以充满哦屏幕也可以小于屏幕并浮动在其他窗口之上。

一个应用通常是由多个彼此松散联系的Activity组成,一般会指定应用中的某个Activity为主活动,也就是说首次启动应用时给用户呈现的Activity。将Activity设为主活动的方法,如下面代码所示需要在AndroidManifest文件中添加以下内容

<application>
     ....
    <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
     </activity>
     ....
</application>    

当然Activity之间可以进行互相跳转,以便执行不同的操作。每当新Activity启动时,旧的Activity便会停止,但是系统会在堆栈也就是返回栈中保留该Activity。当新Activity启动时,系统也会将其推送到返回栈上,并取得用户的操作焦点。当用户完成当前Activity并按返回按钮是,系统就会从堆栈将其弹出销毁,然后回复前一Activity

当一个Activity因某个新Activity启动而停止时,系统会通过该Activity的生命周期回调方法通知其这一状态的变化。Activity因状态变化每个变化可能有若干种,每一种回调都会提供执行与该状态相应的特定操作的机会

package club.zhuol.qqcopyexample;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.view.View;
import android.view.WindowManager;
import android.widget.TextView;

public class CoverActivity extends AppCompatActivity {
    Handler handler;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_cover);
        myIntent();
        init();
    }

    private void myIntent() {
        handler = new Handler() {
            @Override
            public void handleMessage(Message msg) {

                if (msg.what != 0) {
                    //tv_skip.setText(msg.what + "秒后进入APP");
                } else {
                    click();
                }
            }
        };
    }

    private void init() {
        //全屏显示

        getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);

        //tv_skip = findViewById(R.id.tv_skip);
        //textView.setText("zhuoL");
        new CountDown().start();
    }

    private void click() {
        Intent intent = new Intent(CoverActivity.this, LoginActivity.class);
        startActivity(intent);
        finish();
    }

    //进入APP倒计时
    class CountDown extends Thread {
        int count = 1;

        @Override
        public void run() {
            try {
                while (count >= 0) {
                    sleep(1000);
                    Message message = new Message();
                    message.what = count;
                    handler.sendMessage(message);
                    count--;
                }
            } catch (InterruptedException e) {
                e.printStackTrace();
            }

        }
    }
}

在这里插入图片描述

到此这篇关于Android activity延时跳转的文章就介绍到这了,更多相关Android activity延时跳转内容请搜索自学编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持自学编程网!

编程技巧