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

时间:2016-08-08 06:23:24

标签: android performance android-layout splash-screen app-startup

我试图在启动前删除白屏,所以我按照这些链接中提到的解决方案

How To fix white screen on app Start up?

White screen before splashscreen

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

包括将活动主题更改为此

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

或将其添加到我的主题

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

但实现其中任何一项都会在点击应用程序图标后冻结UI一段时间后,所有内容都可以正常工作。

有没有人成功解决这个问题。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:0)

创建自定义主题,例如

 //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" />

试试这个。

答案 1 :(得分:0)

以下更改在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.

答案 2 :(得分:0)

最后得到了我的回答Splash Screen in Right Way。我只是跟随。

在值 - &gt; styles.xml中,我创建了启动画面背景图像

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

对于下面的api 19,在值-19-&gt; styles.xml中使用了

<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()并在Manifest.xml文件中为启动画面添加了样式android:theme =“@ style / Splash”