-1

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

4

1 回答 1

0

使用列表视图或网格视图来显示图像。

膨胀您的自定义布局并在列表视图或网格视图中显示图像。

您可以使用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

对于无尽列表,您可以使用常用的无尽列表。https://github.com/commonsguy/cwac-endless

于 2013-03-24T18:36:38.387 回答