Giống như bạn ống .. ban đầu họ hiển thị màn hình biểu tượng thay vì màn hình trắng. Và sau 2 giây hiển thị màn hình chính.
trước tiên hãy tạo một XML có thể vẽ được trong res / drawable.
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:drawable="@color/gray"/>
<item>
<bitmap
android:gravity="center"
android:src="@mipmap/ic_launcher"/>
</item>
</layer-list>
Tiếp theo, bạn sẽ đặt nó làm nền cho hoạt động giật gân của mình trong chủ đề. Điều hướng đến tệp styles.xml của bạn và thêm chủ đề mới cho hoạt động giật gân của bạn
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
</style>
<style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
<item name="android:windowBackground">@drawable/background_splash</item>
</style>
</resources>
Trong SplashTheme mới của bạn, hãy đặt thuộc tính nền cửa sổ thành XML có thể vẽ của bạn. Định cấu hình đây làm chủ đề hoạt động giật gân của bạn trong AndroidManifest.xml:
<activity
android:name=".SplashActivity"
android:theme="@style/SplashTheme">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
Liên kết này cung cấp những gì bạn muốn. từng bước thủ tục.
https://www.bignerdranch.com/blog/splash-screens-the-right-way/
CẬP NHẬT:
Các layer-list
có thể còn đơn giản hơn như thế này (mà cũng chấp nhận drawables vector cho logo làm trung tâm, không giống như các <bitmap>
thẻ):
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<!-- Background color -->
<item android:drawable="@color/gray"/>
<!-- Logo at the center of the screen -->
<item
android:drawable="@mipmap/ic_launcher"
android:gravity="center"/>
</layer-list>
onCreate
phần việc của nó . Cố gắng chỉ "setContentView" trong hoạt động đó và kiểm tra xem sự chậm trễ này đã biến mất chưa.