@Test public void getWithCacheHit() throws Exception { Bitmap bitmap = Bitmap.createBitmap(1, 1, null); ImageLoader.ImageListener listener = mock(ImageLoader.ImageListener.class); when(mImageCache.getBitmap(anyString())).thenReturn(bitmap); ImageLoader.ImageContainer ic = mImageLoader.get("http://foo", listener); Assert.assertSame(bitmap, ic.getBitmap()); verify(listener).onResponse(ic, true); }
YourApplicationClass.getInstance().getImageLoader().get(image_url, new ImageLoader.ImageListener() { @Override public void onResponse(ImageLoader.ImageContainer imageContainer, boolean b) { Bitmap bitmap = imageContainer.getBitmap(); //use bitmap } @Override public void onErrorResponse(VolleyError volleyError) { } });
@Test public void getWithCacheHit() throws Exception { Bitmap bitmap = Bitmap.createBitmap(1, 1, null); ImageLoader.ImageListener listener = mock(ImageLoader.ImageListener.class); when(mImageCache.getBitmap(anyString())).thenReturn(bitmap); ImageLoader.ImageContainer ic = mImageLoader.get("http://foo", listener); Assert.assertSame(bitmap, ic.getBitmap()); verify(listener).onResponse(ic, true); }
@Override public void onResponse(ImageLoader.ImageContainer response, boolean isImmediate) { // skip cache failure if (isImmediate && response.getBitmap() == null) return; // ... }
@Test public void getWithCacheHit() throws Exception { Bitmap bitmap = Bitmap.createBitmap(1, 1, null); ImageLoader.ImageListener listener = mock(ImageLoader.ImageListener.class); when(mImageCache.getBitmap(anyString())).thenReturn(bitmap); ImageLoader.ImageContainer ic = mImageLoader.get("http://foo", listener); Assert.assertSame(bitmap, ic.getBitmap()); verify(listener).onResponse(ic, true); }
@Override public void onResponse(final ImageContainer response, boolean isImmediate) { // If this was an immediate response that was delivered inside of a layout // pass do not set the image immediately as it will trigger a requestLayout // inside of a layout. Instead, defer setting the image by posting back to // the main thread. if (isImmediate && isInLayoutPass) { post(new Runnable() { @Override public void run() { onResponse(response, false); } }); return; } if (response.getBitmap() != null) { setImageBitmap(response.getBitmap()); } else if (mDefaultImageId != 0) { setImageResource(mDefaultImageId); } } }, maxWidth, maxHeight, scaleType);
@Override public void onResponse(final ImageContainer response, boolean isImmediate) { // If this was an immediate response that was delivered inside of a layout // pass do not set the image immediately as it will trigger a requestLayout // inside of a layout. Instead, defer setting the image by posting back to // the main thread. if (isImmediate && isInLayoutPass) { post(new Runnable() { @Override public void run() { onResponse(response, false); } }); return; } if (response.getBitmap() != null) { setImageBitmap(response.getBitmap()); } else if (mDefaultImageId != 0) { setImageResource(mDefaultImageId); } } }, maxWidth, maxHeight, scaleType);
@Override public void onResponse(final ImageContainer response, boolean isImmediate) { // If this was an immediate response that was delivered inside of a layout // pass do not set the image immediately as it will trigger a requestLayout // inside of a layout. Instead, defer setting the image by posting back to // the main thread. if (isImmediate && isInLayoutPass) { post(new Runnable() { @Override public void run() { onResponse(response, false); } }); return; } if (response.getBitmap() != null) { setImageBitmap(response.getBitmap()); } else if (mDefaultImageId != 0) { setImageResource(mDefaultImageId); } } }, maxWidth, maxHeight, scaleType);
@Test public void getWithCacheHit() throws Exception { Bitmap bitmap = Bitmap.createBitmap(1, 1, null); ImageLoader.ImageListener listener = mock(ImageLoader.ImageListener.class); when(mImageCache.getBitmap(anyString())).thenReturn(bitmap); ImageLoader.ImageContainer ic = mImageLoader.get("http://foo", listener); Assert.assertSame(bitmap, ic.getBitmap()); verify(listener).onResponse(ic, true); }
@Test public void getWithCacheHit() throws Exception { Bitmap bitmap = Bitmap.createBitmap(1, 1, null); ImageLoader.ImageListener listener = mock(ImageLoader.ImageListener.class); when(mImageCache.getBitmap(anyString())).thenReturn(bitmap); ImageLoader.ImageContainer ic = mImageLoader.get("http://foo", listener); Assert.assertSame(bitmap, ic.getBitmap()); verify(listener).onResponse(ic, true); }