简单引导界面
这个实现起来其实很简单,分为几步:
- 创建Activity以及它的Layout.xml文件
- 在你的Activity中使用Handler机制:
-
Handler handler = new Handler(); //延时自动跳转 handler.postDelayed((new Runnable() { @Override public void run() { Intent intent=new Intent (你的引导Activity.this, 你要跳转的Activity.class); startActivity(intent); GuideActivity.this.finish(); } }),3000);//延时的时间
这样一个简单引导界面就成功了
更加好看的引导界面
这里需要使用一个第三方库
AVLoadingIndicatorView
首先导入依赖:
implementation 'com.wang.avi:library:2.1.3'
然后加入到xml文件中:
<?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="com.investmate.GuideActivity">
<com.wang.avi.AVLoadingIndicatorView
android:id="@+id/avi"
style="@style/AVLoadingIndicatorView"
android:layout_width="300dp"
android:layout_height="300dp"
android:layout_gravity="center"
android:visibility="visible"
app:indicatorColor="#0000CD"
app:indicatorName="PacmanIndicator"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.496"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.249" />
<TextView
android:layout_width="match_parent"
android:layout_height="100dp"
android:gravity="center"
android:text="Welcome!"
android:textSize="50dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.7"></TextView>
<com.wang.avi.AVLoadingIndicatorView
android:id="@+id/avi1"
style="@style/AVLoadingIndicatorView"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_gravity="center"
android:visibility="visible"
app:indicatorColor="#000000"
app:indicatorName="LineSpinFadeLoaderIndicator"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.867" />
</androidx.constraintlayout.widget.ConstraintLayout>
你的Activity文件不需要很大的变化,和简单的引导界面是一样的
package com.investmate;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Intent;
import android.os.Bundle;
import android.os.Handler;
public class GuideActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_guide);
Handler handler = new Handler();
//延时自动跳转
handler.postDelayed((new Runnable() {
@Override
public void run() {
Intent intent=new Intent (GuideActivity.this, MainActivity.class);
startActivity(intent);
GuideActivity.this.finish();
}
}),3000);//延时的时间
}
}
这个时候的运行效果是这样的
还有很多种样式,如下:
自己选择:
Row 1
BallPulseIndicator
BallGridPulseIndicator
BallClipRotateIndicator
BallClipRotatePulseIndicator
Row 2
SquareSpinIndicator
BallClipRotateMultipleIndicator
BallPulseRiseIndicator
BallRotateIndicator
Row 3
CubeTransitionIndicator
BallZigZagIndicator
BallZigZagDeflectIndicator
BallTrianglePathIndicator
Row 4
BallScaleIndicator
LineScaleIndicator
LineScalePartyIndicator
BallScaleMultipleIndicator
Row 5
BallPulseSyncIndicator
BallBeatIndicator
LineScalePulseOutIndicator
LineScalePulseOutRapidIndicator
Row 6
BallScaleRippleIndicator
BallScaleRippleMultipleIndicator
BallSpinFadeLoaderIndicator
LineSpinFadeLoaderIndicator
Row 7
TriangleSkewSpinIndicator
PacmanIndicator
BallGridBeatIndicator
SemiCircleSpinIndicator