Android應用第一次啟動時的歡迎界面制作


原理是這樣,我們在SharedPreferences中存儲一個int型數據,用來代表第幾次登錄,每次啟動時都讀取出來判斷是不是第一次啟動,然后依次判斷是否要顯示歡迎界面,

具體實現如下:

設置一個歡迎界面的Activity,並設置為主Activity,在判斷第幾次啟動后來決定要不要跳轉到MainActivity

package com.example.f;

import androidx.appcompat.app.AppCompatActivity;

import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class StartActivity extends AppCompatActivity {
private Button go=null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_start);

        go=(Button)findViewById(R.id.go);
        SharedPreferences userInfo = getSharedPreferences("start", MODE_PRIVATE);
        SharedPreferences.Editor editor = userInfo.edit();
        Int x;
//獲取記錄啟動次數的值,若獲取不到就默認為1 x=userInfo.getInt("start",1); //判斷第幾次啟動 if(x==1) {
//為啟動數加一 x++; editor.putInt("start",x); editor.commit(); } else { //若不是第一次登錄就直接跳轉MainActivity x++; editor.putInt("start",x); editor.commit(); Intent it=new Intent(); it.setClass(StartActivity.this,MainActivity.class); startActivity(it); StartActivity.this.finish(); } //歡迎界面進入應用的按鈕 go.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent it=new Intent(); it.setClass(StartActivity.this,MainActivity.class); startActivity(it); StartActivity.this.finish(); } }); } }

  布局文件只有一個按鈕

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".StartActivity">

    <Button
        android:id="@+id/go"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="開始"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</androidx.constraintlayout.widget.ConstraintLayout>

  初次啟動效果如下

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM