嗨,我有一个 android 应用程序的问题。我有一个包含位图和字符串的列表。
位图总是通过BitmapFactory
. 我在自己的线程中没有这个,所以当列表变长时,页面的加载需要很多时间。
现在我的问题:
什么是使用户顺利完成此操作的最简单方法,因此他不必等待。最好的方法是先显示字符串,然后显示每个位图的加载条,然后一个接一个地生成它。
但是我应该为每个图像使用一个额外的线程还是一个线程?
嗨,我有一个 android 应用程序的问题。我有一个包含位图和字符串的列表。
位图总是通过BitmapFactory
. 我在自己的线程中没有这个,所以当列表变长时,页面的加载需要很多时间。
现在我的问题:
什么是使用户顺利完成此操作的最简单方法,因此他不必等待。最好的方法是先显示字符串,然后显示每个位图的加载条,然后一个接一个地生成它。
但是我应该为每个图像使用一个额外的线程还是一个线程?
看下面的线程:
特别是这个答案:https ://stackoverflow.com/a/3068012/586859
您要查找的内容通常标记为“延迟加载”。该线程包含一种方法,甚至可以缓存您正在下载的图像以加快图像加载速度。我建议优化您的ListView
using ViewHolder
,并使用类似于该帖子中的适配器来获得更流畅的视图。
如果有很多图片,你不能为每张图片创建一个线程,因为它会抛出异常。最简单的 Android 方法是为这些作业创建一个 AsyncTask,如果文件很多,则创建一个具有后台线程的本地服务。如果你想要更优雅的方式,你可以使用 java.util.concurrent.*; 并为此作业创建线程轮询。