Android 黑屏和太等待一个屏幕到另一个屏幕?

Android 黑屏和太等待一个屏幕到另一个屏幕?,android,android-activity,screen,Android,Android Activity,Screen,我在父活动中有一个listview,我正在将一些参数从父屏幕传递到子活动。我还有自定义主题和标题栏。我的问题是,当我从父listview转到子视图屏幕时,时间太长,黑屏会出现一段时间。 原因是什么?我如何避免 我在谷歌上搜索了一下,也发现了一个原因,但对我来说不起作用 有人能帮我吗?当您进入下一个屏幕时,请将处理任务放入线程(在OnCreate()中),并显示进度对话框等待 编辑-尝试在活动中使用此主题,并告诉我发生了什么 @android:style/Theme.Translucent.NoT

我在父活动中有一个listview,我正在将一些参数从父屏幕传递到子活动。我还有自定义主题和标题栏。我的问题是,当我从父listview转到子视图屏幕时,时间太长,黑屏会出现一段时间。 原因是什么?我如何避免

我在谷歌上搜索了一下,也发现了一个原因,但对我来说不起作用


有人能帮我吗?

当您进入下一个屏幕时,请将处理任务放入线程(在OnCreate()中),并显示进度对话框等待

编辑-尝试在活动中使用此主题,并告诉我发生了什么

@android:style/Theme.Translucent.NoTitleBar

当您到达下一个屏幕时,请将处理任务放入线程(在OnCreate()中),并显示进度对话框以等待

编辑-尝试在活动中使用此主题,并告诉我发生了什么

@android:style/Theme.Translucent.NoTitleBar

根据描述,您有处理问题,而不是显示问题。您需要确定需要花费太长时间才能完成的例行程序。如果看不到处理代码,就很难推荐解决方案

以下几点可能会有所帮助: 您是在真实设备上运行应用程序还是使用模拟器?-仿真器是出了名的慢。试着在真正的设备上运行它

您是否正在访问在线资源,如UI线程上的网站或web服务?所有在线访问都应在专用线程上运行

您的处理在哪里进行?不要在ListView的onClick中执行过多的处理,因为它将在UI线程上运行。在新活动的onCreate方法中只放置最小的处理,因为这也是在UI线程上运行的。放置长时间处理的最佳位置是新活动的onResume方法(它仍然在UI线程上运行),理想情况下将处理传递给另一个线程

您正在访问本地SQLite数据库吗?如果是这样,您的SQL语句和/或数据库可能不会针对性能进行优化。如果您使用的是本地数据库,并且不是一个强大的SQL程序员,请让别人查看您的语句或将它们发布在这里

您的应用程序是否使用了大量内存,例如加载到内存中的大型阵列或图像?如果是这样的话,减少内存需求——只在内存中保存任何时刻必须拥有的内容


如果没有这些帮助,请发布从单击ListView到准备进行其他用户输入之间的处理过程的详细说明。

根据说明,您有处理问题,而不是显示问题。您需要确定需要花费太长时间才能完成的例行程序。如果看不到处理代码,就很难推荐解决方案

以下几点可能会有所帮助: 您是在真实设备上运行应用程序还是使用模拟器?-仿真器是出了名的慢。试着在真正的设备上运行它

您是否正在访问在线资源,如UI线程上的网站或web服务?所有在线访问都应在专用线程上运行

您的处理在哪里进行?不要在ListView的onClick中执行过多的处理,因为它将在UI线程上运行。在新活动的onCreate方法中只放置最小的处理,因为这也是在UI线程上运行的。放置长时间处理的最佳位置是新活动的onResume方法(它仍然在UI线程上运行),理想情况下将处理传递给另一个线程

您正在访问本地SQLite数据库吗?如果是这样,您的SQL语句和/或数据库可能不会针对性能进行优化。如果您使用的是本地数据库,并且不是一个强大的SQL程序员,请让别人查看您的语句或将它们发布在这里

您的应用程序是否使用了大量内存,例如加载到内存中的大型阵列或图像?如果是这样的话,减少内存需求——只在内存中保存任何时刻必须拥有的内容


如果这些都没有帮助,请发布从单击ListView到准备进行其他用户输入之间的处理过程的详细说明。

用户单击ListView项目后,您是否正在进行处理?@DuyguK您可以显示您的代码吗?@DuyguK可能缺少一些代码,以帮助其他人了解您的问题,是吗在用户点击listview项目后进行一些处理?@DuyguK你能显示你的代码吗?@DuyguK可能缺少一些代码来帮助其他人理解你的问题。我做到了。但我看到了一段时间的黑屏,之后我看到了processbar和view。同样的问题也有其他屏幕。但并不总是如此。我有时会遇到。Eclipse不是有错误吗?嘿,我有自定义标题栏,可以关联吗?@DuyguK可能是。请尝试添加默认值并检查发生了什么。我做到了。但我看到了一段时间的黑屏,然后我看到了processbar和view。同样的问题也出现在其他屏幕上。但这并不总是。我有时会遇到。Eclipse没有给出任何错误?嘿,我有自定义标题栏,它可以关联吗?@DuyguK可能是。请尝试添加默认值并检查发生的情况。我正在使用真实设备。您知道Eclipse for android线程中的任何进程查看器吗?在Eclipse菜单上单击“窗口”、“显示视图”和“其他…”。。。展开Android组,单击设备,选择您的设备。在设备视图的按钮栏上,单击更新线程按钮。在Eclipse菜单上,单击窗口、显示视图、其他。。。在Android组中,单击线程。不要让更新线程保持打开状态,以防止性能下降。另一种方法是在代码的关键点处放置Log.d调用。消息显示在LogCat视图上。Log.d对性能的影响较小,并且消息带有时间戳。我正在使用真实设备。您知道Eclipse中的android线程进程查看器吗?在Eclipse菜单上单击“窗口”、“显示视图”和“其他…”。。。展开Android组,单击设备,选择您的设备。在…上