当我的程序启动时,我想在真正启动之前做一些设置。例如选择用户,检查更新等等。在这些设置之后,我想以适当的方式启动主程序。
最好的方法是什么?
AyncTask
如果每次检查都需要一个,您可以运行一个或多个,onCreate()
并显示一段ProgressDialog
时间正在获取数据,然后取消它并根据下载的数据onPostExecute()
继续进行其余的检查。MainActivity
如果您需要入门帮助,AsyncTask
可以在基本结构上看到这个 SO 答案。
如果你使用 aProgressDialog
那么应用程序仍然会启动,但用户会看到一些东西并且知道数据正在加载,所以他们不会觉得它被冻结或加载时间过长(或者至少他们会知道为什么它不是立即加载)。
评论后编辑
对于您在评论中所说的想要的内容,您可以使用Activity
具有Dialog Theme
. 这将为您提供所需的功能(几个Button
s 并存储值),但它看起来像一个小弹出窗口。您不能使用实际Dialog
的,因为他们需要Activity
,与任何menu
s 相同,AFAIK。只需使用s创建Activity
并使其成为launcher and main
Intent-filter
Activity
manifest
android:theme="@android:style/Theme.Dialog"
这种方法应该给你你所需要的
有很多方法可以做到这一点。
首先 - 您的应用程序正在做一些繁重的事情,这可能会冻结用户界面。在该版本中执行以下操作: 1. 创建和活动您将覆盖 onCreate 方法的内容,并使用微调器设置一些内容 - 因此某些内容将是活动的,并且用户会看到正在执行某些操作。2. 在您计算出您的应用程序需要的所有内容之后,我建议您将其写入一些全局变量中,覆盖 onStart 方法以更改适合您的布局并为用户提供出色的 UI!
其次 - 你的应用程序在这里并不繁重,只需将所有内容都投入到 onStart 方法的覆盖中。
方便的教育材料: