Java 朋友们,任何人都可以解释这个代码

Java 朋友们,任何人都可以解释这个代码,java,android,Java,Android,在SPLASH\u TIME\u OUTTIME之后,调用处理程序的run方法,启动main活动。同时,会显示启动屏幕 看一看 顺便说一下,闪屏是android上的反模式,不应该使用! 要了解原因,请阅读这篇伟大的文章:如果您的应用程序打包在jar文件中,您可以使用清单文件中的“SplashScreen Image”选项来显示启动屏幕。将图像放在jar归档文件中,并在选项中指定路径。路径不应具有前导斜杠 启动屏幕显示为包含图像的未装饰窗口。可以对图像使用GIF、JPEG或PNG文件。 GIF格式

SPLASH\u TIME\u OUT
TIME之后,调用处理程序的run方法,启动main活动。同时,会显示启动屏幕

看一看

顺便说一下,闪屏是android上的反模式,不应该使用!
要了解原因,请阅读这篇伟大的文章:

如果您的应用程序打包在jar文件中,您可以使用清单文件中的“SplashScreen Image”选项来显示启动屏幕。将图像放在jar归档文件中,并在选项中指定路径。路径不应具有前导斜杠

启动屏幕显示为包含图像的未装饰窗口。可以对图像使用GIF、JPEG或PNG文件。 GIF格式支持动画,而透明度为 GIF和PNG都支持。窗口位于中心位置 屏幕的另一端。未指定多监视器系统上的位置。 它依赖于平台和实现。闪屏窗口 在显示第一个窗口时自动关闭 摆动/AWT

您的代码将显示启动屏幕,直到调用启动时间。在启动屏幕之后启动主活动。(将启动屏幕视为屏幕保护程序。)

如果Java实现提供了命令行界面 使用命令行或快捷方式运行应用程序,使用 Java应用程序启动器选项以显示启动屏幕。神谕 参考实现允许您指定初始屏幕图像 带有-splash:选项的位置。例如:

java-splash:filename.gif测试


如果您稍微仔细地阅读代码……。您可以自己理解……因为其中定义了注释以理解该代码……

不过,下面有代码的描述

这是一项创建初始屏幕的活动

它使用在中定义的指定时间后运行的处理程序<代码>飞溅时间\u超时

1000=1秒

因此,如果您已将
3000
值定义为
SPLASH\u TIME\u OUT
,则新的
Activity
main Activity.class将在3秒后打开

Intent
用于在指定时间后启动新活动……借助于
startActivity(intentobject)

当前活动(
SplashScreen.this
)将关闭,因为
finish()
方法


你面临的问题是什么?我是android新手,我想设计spalash屏幕,我无法理解这个代码是的,它在SPLASH\u TIME\u OUT毫秒内启动一个新活动,然后结束这个活动。这是一个启动屏幕实现。应该可以很好地工作,除非用户在使用过程中不断旋转手机,否则手机会开得太久。您应该更具体地说明哪些部分会让您感到困惑,然后将标题调整得不那么宽泛。这个问题似乎离题了,因为它是关于解释代码的。
@Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_splash);

        new Handler().postDelayed(new Runnable() {

            /*
             * Showing splash screen with a timer. This will be useful when you
             * want to show case your app logo / company
             */

            @Override
            public void run() {
                // This method will be executed once the timer is over
                // Start your app main activity
                Intent i = new Intent(SplashScreen.this, MainActivity.class);
                startActivity(i);

                // close this activity
                finish();
            }
        }, SPLASH_TIME_OUT);
    }