android 闪屏动态界面,设置闪屏以及跳转到登陆界面实例演示
时间: 2023-12-03 13:02:44 浏览: 46
好的,下面是一个 Android 闪屏动态界面的设置及跳转到登录界面的实例演示。
首先,在 `res/layout` 目录下,创建一个名为 `activity_splash.xml` 的布局文件,用于设置闪屏界面的 UI。
```xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<!-- 设置闪屏图片 -->
<ImageView
android:id="@+id/splash_image"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/splash_image" />
<!-- 设置闪屏进度条 -->
<ProgressBar
android:id="@+id/splash_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:indeterminate="true" />
</RelativeLayout>
```
然后,在 `res/drawable` 目录下,添加一个名为 `splash_image.png` 的图片资源,用于设置闪屏界面的背景图片。
接下来,在 `SplashActivity.java` 文件中,编写闪屏界面的逻辑。
```java
public class SplashActivity extends AppCompatActivity {
private static final int SPLASH_DURATION = 3000; // 闪屏持续时间,单位为毫秒
private ImageView splashImage;
private ProgressBar splashProgress;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splash);
splashImage = findViewById(R.id.splash_image);
splashProgress = findViewById(R.id.splash_progress);
// 加载闪屏图片
Glide.with(this)
.load(R.drawable.splash_image)
.into(splashImage);
// 设置闪屏持续时间和进度条动画
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
splashProgress.setVisibility(View.VISIBLE);
ObjectAnimator animator = ObjectAnimator.ofInt(splashProgress, "progress", 0, 100);
animator.setDuration(SPLASH_DURATION);
animator.addListener(new AnimatorListenerAdapter() {
@Override
public void onAnimationEnd(Animator animation) {
// 跳转到登录界面
startActivity(new Intent(SplashActivity.this, LoginActivity.class));
finish();
}
});
animator.start();
}
}, SPLASH_DURATION);
}
}
```
在上述代码中,我们使用了 Glide 库来加载闪屏图片,同时使用了 ObjectAnimator 来设置闪屏进度条的动画效果。在闪屏持续时间结束后,我们使用 Intent 来跳转到登录界面,并调用 `finish()` 方法来销毁当前的闪屏界面。
最后,在 `AndroidManifest.xml` 文件中,将 `SplashActivity` 设置为应用程序的启动界面。
```xml
<activity
android:name=".SplashActivity"
android:theme="@style/AppTheme.NoActionBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
```
这样,当用户打开应用程序时,就会先显示闪屏界面,然后在一定时间后自动跳转到登录界面。