我是否总是需要将数据库查询从UI线程移动到单独的线程?

时间:2012-07-11 23:57:46

标签: android sqlite background

这个问题来自我遇到的问题,或者对某些事情感到困惑。所以它不赞成在UI线程上查询数据库。但我的问题是,如果屏幕上显示的内容取决于结果是什么。你是否仍然在后台运行它,或者你应该暂停屏幕输出,直到你从数据库知道你需要的信息?

1 个答案:

答案 0 :(得分:4)

您应该如何设置它是使用AsyncTask使用doInBackground方法查询数据库。然后使用onPostExecute方法更新UI。您无法在主线程之外的任何其他线程上更新UI。

希望这是有道理的。如果没有,这里有一些可能有用的文章:

http://android-developers.blogspot.com/2009/05/painless-threading.html

http://developer.android.com/reference/android/os/AsyncTask.html

http://www.peachpit.com/articles/article.aspx?p=1823692&seqNum=3

祝你好运!