当我的应用程序加载时,如何避免 Android 黑屏?

发布于 2024-12-26 10:37:34 字数 350 浏览 0 评论 0原文

当我的应用程序加载时,如何避免 Android 中出现黑屏?我已经删除了从 onCreate 到 AsyncTask 的所有内容,但一开始我仍然有黑屏。我的默认(第一个)活动是 Main,如果有一个参数,我会立即加载个人活动而不显示 Main,否则我显示 Main 活动。有人可以建议我解决方案吗? 我尝试使用 http://blog.iangclifton.com /2011/01/01/android-splash-screens-done-right/ 但这没有帮助。

How to avoid black screen in android while my app is loading ? I have removed all things from onCreate to AsyncTask but still I have black screen at the beginning. My default ( first ) activity is Main and if there is one parameter I momentarily load Personal activity withou showing Main, otherwise I show Main activity. Can anyone suggest me solution ?
I tried with http://blog.iangclifton.com/2011/01/01/android-splash-screens-done-right/ but it doesn't help.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

牵强ㄟ 2025-01-02 10:37:34

我不知道。

但是,在您的 activity 内的 Manifest 中尝试一下

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

或者

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

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

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

i'm not sure.

but, Try this in Manifest inside your activity

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

Or

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

I have seen a good solution about splash screen... hope it useful

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

浮世清欢 2025-01-02 10:37:34

在 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>

Add below line in your android style.xml file in style tag .

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

Complete code :

 <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>
不再让梦枯萎 2025-01-02 10:37:34

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

祝你好运

Optimize ur code,try to reduce code from onCreate(),this was issue faced by me i solved it by reducing code in onCreate().

Best of Luck

黑白记忆 2025-01-02 10:37:34

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

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

请参阅下面链接的答案,了解如何实现快速显示的启动屏幕的详细说明(带有示例代码):

创建一个真正的启动屏幕

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

Since you have cleared out your onCreate() and assigned your initialization tasks to a worker thread, the fact that your screen nonetheless remains dark for a while after your app is launched is probably due to the complexity of the graphics in your initial display (rather than to your initialization code, which is probably model-related, rather than view-related).

The solution that you say worked for you is to use a visible background as your theme. I'm glad that you found that to be adequate, but for some purposes a more specific (e.g., logo / app name) splash screen (which displays quickly because it uses much simpler graphics) would be more desirable.

Please see the answer linked below for a detailed description (with sample code) of how a splash screen that displays quickly can be implemented:

Create a true splash screen

This also discusses the approach that you have accepted above.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文