【发布时间】:2018-03-20 19:29:10
【问题描述】:
直升机,
我有一些活动,从事互联网相关工作。
当我的网络连接速度很慢时,开始一个新的活动会变成黑屏,几秒钟后就会显示出来。
Internet 工作由 AsyncTask 完成。
如何通过使用进度条来避免这种情况?
【问题讨论】:
-
检查您的大部分代码是否在 onCreate 中。理想情况下,应该只有静态初始化。在 onStart 中休息。如果您的 Internet 任务需要在屏幕上显示数据,请在 onPreExecute 中启动指示器。
-
是否有可能在活动之间显示进度条?
-
这没有意义。进度条附加到活动 1 或活动 2 的视图。另外,在活动之间切换所花费的时间并没有那么高。延迟和黑屏会出现,因为某些操作需要时间并且是在 onCreate 中编写的。尝试将时间戳打印为 onCreate 的第一行,以查看 Activity 加载的速度以及延迟在哪里。
-
如果您的互联网工作是在
AsyncTask中完成的,那么慢速互联网应该不会影响活动加载时间。请发布您的代码,否则我们所做的任何帮助都只是一场猜谜游戏。
标签: android android-activity android-asynctask android-internet