当前位置: 首页 > 知识库问答 >
问题:

在启动之前删除白屏时 UI 冻结

章海
2023-03-14

我试图在飞溅之前消除白屏,所以我按照这些链接中提到的解决方案

如何修复应用程序启动时的白屏?

闪屏前的白色屏幕

我尝试了这里提到的几乎所有解决方案

其中包括将活动主题更改为:

 android:theme="@android:style/Theme.Translucent.NoTitleBar"

或者把这个加入到我的主题中

<item name="android:windowDisablePreview">true</item>

但是实现其中任何一个都会在单击应用程序图标时冻结UI一段时间,之后一切按预期工作。

有没有人成功地修复了这个滞后。任何帮助将不胜感激。

共有3个答案

纪秋月
2023-03-14

终于得到了我的答案正确的方式飞溅屏幕。我只是跟着做。

在价值观中——

<style name="Splash" parent="AppTheme.NoActionBar">
    <item name="android:windowBackground">@drawable/splash</item>
</style>

对于低于api 19,以值-19-

<style name="Splash" parent="AppTheme.NoActionBar">
    <item name="android:windowBackground">@drawable/splash</item>
    <item name="android:windowTranslucentStatus">true</item>
    <item name="android:windowTranslucentNavigation">true</item>
</style>

我从SplashActivity中删除了setContentview(),并在清单中添加了启动屏幕的样式。xml文件android:theme=“@style/Splash”

陶富
2023-03-14

以下更改在mac上对我有效:

1.Goto android studio preferences.
2.In Build,Execution and Deployment select "Instant run".
3.disable-Enable instant run to hot swap code/resource changes on deploy.
4.apply changes,clean project and rebuild again.
匡凌
2023-03-14

创建自定义主题,例如,

 //splashTheme
 //create in styles
 <style name="splashTheme" parent="AppTheme">
    <!-- Customize your theme here. -->

    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>

</style>

然后应用如下的主题,

 //manifest file
 <activity
        android:name=".SplashActivity"

        android:theme="@style/AppTheme.splashTheme"
        android:windowSoftInputMode="adjustResize|stateHidden" />

试试这个。

 类似资料:
  • 我使用一个空活动为我的应用程序创建了一个启动屏幕,该活动在背景图像中保持可见3秒钟。通常,应用程序在背景图像变为可见之前以白色屏幕启动,然而,有些应用程序已经以“真实”的初始屏幕图像启动。如何实现这一点?

  • 本文向大家介绍React Native如何消除启动时白屏的方法,包括了React Native如何消除启动时白屏的方法的使用技巧和注意事项,需要的朋友参考一下 在RN 项目启动之后有一个短暂的白屏,调试阶段白屏的时间较长,大概3-5秒,打正式包后这个白屏时间会大大缩短,大多时候都是一闪而过,所以称之为“闪白”。 其实解决的方案也有很多,这里做一个简单的总结。 白屏的原因 在iOS App 中有 启

  • 问题内容: 众所周知,许多Android应用在首次聚焦之前都会非常短暂地显示白屏。在以下情况下会出现此问题: 扩展全局类并在其中执行主要初始化的Android应用。该 对象总是在第一个对象之前创建(这可以在调试器中观察到),因此这很有意义。这是我的案件延误的原因。 在初始屏幕之前显示默认预览窗口的Android应用。 设置显然在这里不起作用。我也无法将初始屏幕的父主题设置为此处所述,因为[不幸的是

  • 我已经创建了一个初始屏幕,它一开始工作得很好,但之后,它会向我显示一个白色空白屏幕,而不是我的初始屏幕图像文件。我不知道为什么会发生这种情况。 我试图改变我的风格.xml父主题,但有些主题使我的应用程序崩溃,只有主题.AppCompat.Light.NoActionBar可以工作,并给我一个空白的白屏。 styles.xml 飞溅.java 屏幕序列、线程Hibernate时间和其他一切都正常工作

  • 问题内容: 我想在onCreate()方法中进行所有初始化时显示启动屏幕,但是我需要在屏幕上绘制内容的组件也在初始化,因此,当我启动应用程序时以及onCreate()之后,出现黑屏方法已完成,则仅绘制了第一个屏幕。与其使用黑屏,不如使用闪屏。 这是我在onCreate方法中的代码: 我应该如何实现启动屏幕,以避免一开始出现黑屏? 问题答案: 为该初始屏幕创建XML布局,并将其设置为在super.o

  • 众所周知,许多Android应用程序在其第一个进入焦点之前会短暂地显示一个白色屏幕。在以下情况下会出现此问题: > 在启动屏幕前显示默认预览窗口的Android应用程序。 设置显然在这里不起作用。也不能将闪屏的父主题设置为如这里所述,因为[不幸地]我的闪屏使用了一个。 同时,不扩展类的应用程序在启动时不会显示白色屏幕。 问题是,理想情况下,对象中执行的初始化需要在显示第一个之前进行。因此,我的问题