2015-12-10 57 views
0

我使用的是UNIVERSAL IMAGE LOADER在Recyclerview中加載圖像。在Recyclerview中加載Image URIs數組不能使用Universal Image Loader

我試圖通過ImageLoader.getInstance().displayImage("https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg", viewHolder.mImage, options);

它的工作原理整齊並給予圖像的陣列,只有當具有即時通訊問題加載從淨的單個圖像。 任何人都請幫我解決這個問題。

在MainActivity從網絡

ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(getApplicationContext()) 
       .memoryCacheExtraOptions(480, 800) // default = device screen dimensions 
       .threadPoolSize(5) // default 
       .threadPriority(Thread.NORM_PRIORITY - 3) // default 
       .denyCacheImageMultipleSizesInMemory() 
       .memoryCacheSize(2 * 1024 * 1024) 
       .memoryCacheSizePercentage(13) // default 
       .discCacheSize(50 * 1024 * 1024) 
       .discCacheFileCount(100) 
       .imageDownloader(new BaseImageDownloader(getApplicationContext())) // default 
       .defaultDisplayImageOptions(DisplayImageOptions.createSimple()) // default 
       .writeDebugLogs() 
       .build(); 

     ImageLoader.getInstance().init(config);  

圖像。

public class data { 
     public static final String[] IMAGES = new String[]{ 
       "https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg", 
       "https://lh4.googleusercontent.com/--dq8niRp7W4/URquVgmXvgI/AAAAAAAAAbs/-gnuLQfNnBA/s1024/A%252520Song%252520of%252520Ice%252520and%252520Fire.jpg", 
       "https://lh5.googleusercontent.com/-7qZeDtRKFKc/URquWZT1gOI/AAAAAAAAAbs/hqWgteyNXsg/s1024/Another%252520Rockaway%252520Sunset.jpg", 
       "https://lh3.googleusercontent.com/--L0Km39l5J8/URquXHGcdNI/AAAAAAAAAbs/3ZrSJNrSomQ/s1024/Antelope%252520Butte.jpg", 
       "https://lh6.googleusercontent.com/-8HO-4vIFnlw/URquZnsFgtI/AAAAAAAAAbs/WT8jViTF7vw/s1024/Antelope%252520Hallway.jpg", 
       "https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg", 
     }; 
    } 

在onBindViewHolder

@Override 
    public void onBindViewHolder(final RecyclerViewHolder viewHolder, int i) { 
     // get the single element from the main array 
     DisplayImageOptions options = new DisplayImageOptions.Builder() 
       .showImageOnLoading(R.drawable.mirlogo) 
       .showImageForEmptyUri(R.drawable.gallery_no_image) 
       .showImageOnFail(R.drawable.gallery_image_fail) 
       .cacheInMemory(false) 
       .cacheOnDisk(false) 
       .considerExifParams(false) 
       .bitmapConfig(Bitmap.Config.RGB_565) 
       .build(); 
ImageLoader.getInstance() 
       .displayImage(Arrays.toString(data.IMAGES), viewHolder.mImage, options); 
} 

logcat的錯誤。

12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors D/ImageLoader: Load image from network [[https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg, https://lh4.googleusercontent.com/--dq8niRp7W4/URquVgmXvgI/AAAAAAAAAbs/-gnuLQfNnBA/s1024/A%252520Song%252520of%252520Ice%252520and%252520Fire.jpg, https://lh5.googleusercontent.com/-7qZeDtRKFKc/URquWZT1gOI/AAAAAAAAAbs/hqWgteyNXsg/s1024/Another%252520Rockaway%252520Sunset.jpg, https://lh3.googleusercontent.com/--L0Km39l5J8/URquXHGcdNI/AAAAAAAAAbs/3ZrSJNrSomQ/s1024/Antelope%252520Butte.jpg, https://lh6.googleusercontent.com/-8HO-4vIFnlw/URquZnsFgtI/AAAAAAAAAbs/WT8jViTF7vw/s1024/Antelope%252520Hallway.jpg, https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg]_480x300] 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader: UIL doesn't support scheme(protocol) by default [[https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg, https://lh4.googleusercontent.com/--dq8niRp7W4/URquVgmXvgI/AAAAAAAAAbs/-gnuLQfNnBA/s1024/A%252520Song%252520of%252520Ice%252520and%252520Fire.jpg, https://lh5.googleusercontent.com/-7qZeDtRKFKc/URquWZT1gOI/AAAAAAAAAbs/hqWgteyNXsg/s1024/Another%252520Rockaway%252520Sunset.jpg, https://lh3.googleusercontent.com/--L0Km39l5J8/URquXHGcdNI/AAAAAAAAAbs/3ZrSJNrSomQ/s1024/Antelope%252520Butte.jpg, https://lh6.googleusercontent.com/-8HO-4vIFnlw/URquZnsFgtI/AAAAAAAAAbs/WT8jViTF7vw/s1024/Antelope%252520Hallway.jpg, https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg]]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...)) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader: java.lang.UnsupportedOperationException: UIL doesn't support scheme(protocol) by default [[https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg, https://lh4.googleusercontent.com/--dq8niRp7W4/URquVgmXvgI/AAAAAAAAAbs/-gnuLQfNnBA/s1024/A%252520Song%252520of%252520Ice%252520and%252520Fire.jpg, https://lh5.googleusercontent.com/-7qZeDtRKFKc/URquWZT1gOI/AAAAAAAAAbs/hqWgteyNXsg/s1024/Another%252520Rockaway%252520Sunset.jpg, https://lh3.googleusercontent.com/--L0Km39l5J8/URquXHGcdNI/AAAAAAAAAbs/3ZrSJNrSomQ/s1024/Antelope%252520Butte.jpg, https://lh6.googleusercontent.com/-8HO-4vIFnlw/URquZnsFgtI/AAAAAAAAAbs/WT8jViTF7vw/s1024/Antelope%252520Hallway.jpg, https://lh6.googleusercontent.com/-55osAWw3x0Q/URquUtcFr5I/AAAAAAAAAbs/rWlj1RUKrYI/s1024/A%252520Photographer.jpg]]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...)) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStreamFromOtherSource(BaseImageDownloader.java:280) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.download.BaseImageDownloader.getStream(BaseImageDownloader.java:99) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.getImageStream(BaseImageDecoder.java:98) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.decode.BaseImageDecoder.decode(BaseImageDecoder.java:74) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.decodeImage(LoadAndDisplayImageTask.java:265) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.tryLoadBitmap(LoadAndDisplayImageTask.java:238) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at com.nostra13.universalimageloader.core.LoadAndDisplayImageTask.run(LoadAndDisplayImageTask.java:136) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587) 
12-10 10:21:29.453 26158-26344/com.example.root5solutions.mirrealtors E/ImageLoader:  at java.lang.Thread.run(Thread.java:818) 
12-10 10:21:29.453 26158-26158/com.example.root5solutions.mirrealtors W/Resources: Converting to string: TypedValue{t=0x5/d=0x1001 a=2 r=0x7f09000d} 
12-10 10:21:29.453 26158-26158/com.example.root5solutions.mirrealtors W/Resources: Converting to string: TypedValue{t=0x5/d=0x1001 a=2 r=0x7f09000d} 
12-10 10:21:29.463 26158-26158/com.example.root5solutions.mirrealtors W/Resources: Converting to string: TypedValue{t=0x12/d=0x0 a=2 r=0x7f0d00a6} 

回答

1

你根據其位置 得到一個數組,我認爲你錯過了 「位置」

data.Images[position]; 

使用ImageLoader.getInstance().displayImage(Arrays.toString(data.IMAGES[position]),viewHolder.mImage, options);

相關問題