我有以下程序流程:
- 用户填写表格
- 我的应用程序通过内容提供商生成许多记录,这可能需要一些时间(比如 10 秒)
- 然后用户可以继续使用该程序
我有两个问题:
为什么要使用非 UI 线程来执行第 2 步 - 鉴于用户在此过程完成之前无法在我的应用程序中执行任何操作,为什么我不只使用等待小部件?
如果我应该使用非 UI 线程 - 哪种类型的异步线程方法最有意义?
我有以下程序流程:
我有两个问题:
为什么要使用非 UI 线程来执行第 2 步 - 鉴于用户在此过程完成之前无法在我的应用程序中执行任何操作,为什么我不只使用等待小部件?
如果我应该使用非 UI 线程 - 哪种类型的异步线程方法最有意义?
因为您不是唯一使用 UI 线程的人。例如,您将阻止诸如时钟、通知等内容。几秒钟后,Android 将显示一个 ANR(应用程序未响应对话框),询问用户是要等待还是终止您的应用程序。至于 2,使用AsyncTask
,它可以让您轻松完成工作并在完成后更新 UI。
使用AsyncTask
. 看这个教程AsyncTask - 教程
这里是Docum .. AsyncTask
使用 AsyncTask 为您寻找答案... 点击这里!