从外部UI线程更新gridview

时间:2011-11-14 19:31:55

标签: android gridview ui-thread

我正在尝试做一些非常简单的事情,但不知何故没有得到方向。这是我想要完成的。

在我的GridView活动中,我从SD卡位置加载了10张照片。然后,使用菜单选项“加载更多”,我想从另一个SD卡位置加载最多50张照片并刷新GridView以显示所有照片(不想再次使用新项目调用GridView活动)

从外部线程或菜单触发选项刷新GridView(在主UI线程中定义)是我想要做的。任何建议将不胜感激。

3 个答案:

答案 0 :(得分:1)

您唯一且最合适的选择是在菜单中定义“刷新”选项,然后触发AsyncTask来处理后台操作,之后用结果更新Ui。

查看AsyncTask了解详情。

http://developer.android.com/resources/articles/painless-threading.html

答案 1 :(得分:0)

您无法访问UI线程外的GridView

您使用的是ASynchTask吗?如果是这样,请覆盖onPostExecute()并抛出一个事件。

答案 2 :(得分:0)

您可以从另一个主题调用runOnUiThread()

runOnUiThread(new Runnable() { public void run() {
    // update your GridView here...
}});