0

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

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

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

4

3 回答 3

1

您唯一且最合适的选项是您在菜单中定义一个 Refresh 选项,然后触发一个AsyncTask处理后台操作的选项,然后使用结果更新 Ui。

检查AsyncTask了解更多信息。

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

于 2011-11-14T19:36:15.750 回答
0

您无法在 UI 线程之外访问您的GridView 。

你在使用异步任务吗?如果是这样,覆盖onPostExecute()并抛出一个事件。

于 2011-11-14T19:35:12.097 回答
0

您可以从另一个线程调用runOnUiThread() :

runOnUiThread(new Runnable() { public void run() {
    // update your GridView here...
}});
于 2011-11-14T20:49:44.913 回答