9

加载我的应用程序时如何避免 android 出现黑屏?我已将所有内容从 onCreate 删除到 AsyncTask,但一开始我仍然有黑屏。我的默认(第一个)活动是 Main,如果有一个参数,我会暂时加载 Personal 活动而不显示 Main,否则我会显示 Main 活动。谁能建议我解决方案?我试过http://blog.iangclifton.com/2011/01/01/android-splash-screens-done-right/但它没有帮助。

4

4 回答 4

20

我不确定。

Manifest但是,在你的里面试试这个activity

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

或者

android:theme="@android:style/Theme.Light"

我已经看到了一个关于启动画面的好解决方案......希望它有用

https://stackoverflow.com/a/8654361/762919

于 2012-01-11T10:29:47.867 回答
14

在您的 android style.xml 文件的 style 标签中添加以下行。

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

完整代码:

 <style name="AppBaseTheme" parent="android:Theme.Light.NoTitleBar">
    <!--
        Theme customizations available in newer API levels can go in
        res/values-vXX/styles.xml, while customizations related to
        backward-compatibility can go here.
    -->
    <item name="android:windowDisablePreview">true</item>
</style>
于 2015-04-09T09:38:19.327 回答
3

优化你的代码,尝试减少onCreate()中的代码,这是我面临的问题,我通过减少onCreate()中的代码来解决它。

祝你好运

于 2012-01-11T10:29:56.570 回答
1

由于您已清除 onCreate() 并将初始化任务分配给工作线程,因此在您的应用程序启动后您的屏幕仍然保持黑暗一段时间的事实可能是由于初始显示中图形的复杂性(而不是而不是您的初始化代码,这可能与模型相关,而不是与视图相关)。

您说对您有用的解决方案是使用可见背景作为您的主题。我很高兴您发现这已经足够了,但是出于某些目的,更具体的(例如,徽标/应用程序名称)启动屏幕(因为它使用更简单的图形而快速显示)会更可取。

请参阅下面链接的答案,以获取有关如何实现快速显示的初始屏幕的详细说明(带有示例代码):

创建一个真正的闪屏

这也讨论了您在上面接受的方法。

于 2012-09-20T07:41:44.667 回答