如何在我的Android应用程序中实现加载一堆图像

时间:2013-03-24 18:19:38

标签: android

我正在尝试实施一个应用程序,从server.by加载一堆图像(像谷歌图像加载)使用哪个概念我可以实现这一点,我试过谷歌没有找到解决方案给我很好的建议和任何例子或链接先谢谢你。

1 个答案:

答案 0 :(得分:0)

使用listview或gridview显示图像。

为列表视图或网格视图中的自定义布局和显示图像充气。

您可以使用https://github.com/nostra13/Android-Universal-Image-Loader Universal Image Loader从MediaStore或网络加载图片。使用缓存。基于延迟加载但有更多配置选项。

在你的适配器构造函数

 File cacheDir = StorageUtils.getOwnCacheDirectory(a, "UniversalImageLoader/Cache");


// Get singletone instance of ImageLoader
imageLoader = ImageLoader.getInstance();
// Create configuration for ImageLoader (all options are optional)
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(a)
          // You can pass your own memory cache implementation
         .discCache(new UnlimitedDiscCache(cacheDir)) // You can pass your own disc cache implementation
         .discCacheFileNameGenerator(new HashCodeFileNameGenerator())
         .enableLogging()
         .build();

// Initialize ImageLoader with created configuration. Do it once.
imageLoader.init(config);
options = new DisplayImageOptions.Builder()
.showStubImage(R.drawable.stub_id)//dummy image
.cacheInMemory()
.cacheOnDisc()
.displayer(new RoundedBitmapDisplayer(20))
.build();

在你的getView()

  ImageView image=(ImageView)vi.findViewById(R.id.imageview); 
  imageLoader.displayImage(imageurl, image,options);

您也可以使用https://github.com/thest1/LazyList。也使用缓存。

还可以在listview或grdiview中使用ViewHolder。 http://developer.android.com/training/improving-layouts/smooth-scrolling.html

对于Endless列表,您可以使用commonware无限列表。 https://github.com/commonsguy/cwac-endless