Android:在单独的线程中异步运行一个方法

标签 android multithreading android-asynctask

我有一个方法可以通过重新设置 ListView 的适配器来刷新 ListView 。适配器在设置时为每个列表项下载缩略图。

我想在新线程上运行这个名为 refreshListView() 的方法,以便异步下载图像,但我知道我无法在单独的线程上更新 UI。

有哪些替代方法可以做到这一点?

提前致谢。

最佳答案

您可以使用 AsyncTask ( http://developer.android.com/reference/android/os/AsyncTask.html ) 或 Loader ( http://developer.android.com/guide/topics/fundamentals/loaders.html )。我建议使用装载机,因为它似乎总是更容易。两者(除其他外)都是为这类问题而设计的。

为了在低于 3.0 的任何目标平台上使用 Loader,请引用 http://developer.android.com/sdk/compatibility-library.html .

关于Android:在单独的线程中异步运行一个方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7733117/

相关文章:

java - 使用 AsyncTask 显示进度时下载文件时出错

android - 具有与 gridview 相同行为的布局?

java - 有没有办法让对象只能由访问特定方法的第一个线程使用?

Android SQLite 查询、插入、更新、删除,总是需要在后台线程?

java - 从 MATLAB 执行时如何为 JAVA 程序分配更多内存?

multithreading - 并行软件?

Android谷歌地图异步任务添加标记

java - sdkmanager 在线程 "main"java.lang.NoClassDefFoundError : javax/xml/bind/annotation/XmlSchema 中抛出异常

java - 如何从字符串中获取特定数据?

android - 上下文操作栏不完全重叠工具栏