初始屏幕是在应用程序启动时显示的初始屏幕。因此,可以在屏幕启动时显示徽标或显示应用程序的名称。与WhatsApp或Instagram应用程序启动时的操作类似。他们显示其应用程序的简单徽标。现在,问题来了,为此,您需要进行启动器活动,并在该活动中使用XML来显示内容。并将该XML代码添加到onCreate()方法的setContentView()的活动类中。因此在启动时,由于已知onCreate()方法是一个繁重的过程。在应用程序中加载XML代码内容的时间花费了太多时间,直到启动时出现空白屏幕,这被称为冷启动。为避免出现黑屏,您可以使用另一种方法,该方法使用图层列表并将其用作清单中的主题。
Note: Before starting create a launcher activity and delete the XML file of that activity since we are not going to use the onCreate method in the class.
让我们开始实践部分。
步骤1:创建可绘制资源
在要添加初始屏幕内容的位置添加一个新的可绘制资源。转到res目录-> drawable-> your_splashScreenDrawable.xml
XML
-
-
XML
Kotlin
class MainActivity:AppCompatActivty(){
private val mHandler = Handler(Looper.getMainLooper())
private val mLauncher: Launcher = Launcher()
override fun onStart() {
super.onStart()
mHandler.postDelayed(mLauncher, SPLASH_DELAY.toLong())
}
override fun onStop() {
mHandler.removeCallbacks(mLauncher)
super.onStop()
}
private fun launch() {
if (!isFinishing) {
startActivity(Intent(this@MainActivity, AnotherActivity::class.java))
finish()
}
}
private inner class Launcher : Runnable {
override fun run() {
launch()
}
}
companion object {
private const val SPLASH_DELAY = 2000
private const val TAG = "MainActivity"
}
}
XML
在此代码段中,您将在layer-list中使用item标签。这些Item标签具有特定的属性,可以满足您的需求。因此,此代码段将是启动屏幕,其中包含具有背景色的位图。
步骤2:将可绘制资源添加到styles.xml中
XML格式
而且styles.xml中的这段代码将为启动屏幕添加额外的属性,例如全屏等等。在此属性android:windowBackground将添加可绘制资源作为屏幕背景。
步骤3:处理MainActivity.kt文件中的启动画面显示时间
科特林
class MainActivity:AppCompatActivty(){
private val mHandler = Handler(Looper.getMainLooper())
private val mLauncher: Launcher = Launcher()
override fun onStart() {
super.onStart()
mHandler.postDelayed(mLauncher, SPLASH_DELAY.toLong())
}
override fun onStop() {
mHandler.removeCallbacks(mLauncher)
super.onStop()
}
private fun launch() {
if (!isFinishing) {
startActivity(Intent(this@MainActivity, AnotherActivity::class.java))
finish()
}
}
private inner class Launcher : Runnable {
override fun run() {
launch()
}
}
companion object {
private const val SPLASH_DELAY = 2000
private const val TAG = "MainActivity"
}
}
现在,此代码是主要部分,因为它可以处理屏幕显示时间。这里,扩展Runnable的Launcher类被处理程序对象延迟,并且延迟时间完成后,Launcher将转到另一个活动。现在,剩下的关键部分在应用程序的清单文件中。
步骤4:将样式用作清单文件中的主题
转到清单目录->打开AndroidManifest.xml。在清单文件中的活动标签中,添加一个主题属性,您将在其中将此可绘制对象添加为应用程序中的主题。
XML格式