类com.bumptech.glide.GenericRequestBuilder源码实例Demo

下面列出了怎么用com.bumptech.glide.GenericRequestBuilder的API类实例代码及写法,或者点击链接到github查看源代码。

源代码1 项目: giffun   文件: GifFrameLoader.java
private static GenericRequestBuilder<GifDecoder, GifDecoder, Bitmap, Bitmap> getRequestBuilder(Context context,
        GifDecoder gifDecoder, int width, int height, BitmapPool bitmapPool) {
    GifFrameResourceDecoder frameResourceDecoder = new GifFrameResourceDecoder(bitmapPool);
    GifFrameModelLoader frameLoader = new GifFrameModelLoader();
    Encoder<GifDecoder> sourceEncoder = NullEncoder.get();
    return Glide.with(context)
            .using(frameLoader, GifDecoder.class)
            .load(gifDecoder)
            .as(Bitmap.class)
            .sourceEncoder(sourceEncoder)
            .decoder(frameResourceDecoder)
            .skipMemoryCache(true)
            .diskCacheStrategy(DiskCacheStrategy.NONE)
            .override(width, height);

}
 
源代码2 项目: Camera2   文件: GlideFilmstripManager.java
/**
 * Create a small thumbnail sized image that has the same bounds as the
 * media store thumbnail images.
 * <p>
 * If the Uri points at an animated gif, the gif will not play.
 */
public GenericRequestBuilder<Uri, ?, ?, GlideDrawable> loadMediaStoreThumb(Uri uri, Key key)
{
    Size size = clampSize(MEDIASTORE_THUMB_SIZE, MAXIMUM_SMOOTH_PIXELS, getMaxImageDisplaySize());
    return mTinyImageBuilder
            .clone()
            .load(uri)
            .signature(key)
            // This attempts to ensure we load the cached media store version.
            .override(size.width(), size.height());
}
 
源代码3 项目: Camera2   文件: GlideFilmstripManager.java
/**
 * Create very tiny thumbnail request that should complete as fast
 * as possible.
 * <p>
 * If the Uri points at an animated gif, the gif will not play.
 */
public GenericRequestBuilder<Uri, ?, ?, GlideDrawable> loadTinyThumb(Uri uri, Key key)
{
    Size size = clampSize(TINY_THUMB_SIZE, MAXIMUM_SMOOTH_PIXELS, getMaxImageDisplaySize());
    return mTinyImageBuilder
            .clone()
            .load(uri)
            .signature(key)
            .override(size.width(), size.height());
}
 
源代码4 项目: tenor-android-core   文件: GlideLoader.java
public static GenericRequestBuilder applyDimens(@NonNull GenericRequestBuilder requestBuilder,
                                                @NonNull GlideTaskParams payload) {
    final Media media = payload.getMedia();
    if (media != null) {
        requestBuilder.override(media.getWidth(), media.getHeight());
    }
    return requestBuilder;
}
 
源代码5 项目: tenor-android-core   文件: GlideLoader.java
public static <T extends ImageView> void load(@NonNull final GenericRequestBuilder requestBuilder,
                                              @NonNull final GlideTaskParams<T> payload) {

    if (payload.isThumbnail()) {
        requestBuilder.thumbnail(payload.getThumbnailMultiplier());
    }

    requestBuilder.placeholder(payload.getPlaceholder())
            .into(new GlideDrawableImageViewTarget(payload.getTarget()) {
                @Override
                public void onLoadFailed(Exception e, Drawable errorDrawable) {
                    if (payload.getCurrentRetry() < payload.getMaxRetry()) {
                        payload.incrementCurrentRetry();
                        load(requestBuilder, payload);
                    } else {
                        super.onLoadFailed(e, errorDrawable);
                        payload.getListener().failure(payload.getTarget(), errorDrawable);
                    }
                }

                @Override
                public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> animation) {
                    super.onResourceReady(resource, animation);
                    payload.getListener().success(payload.getTarget(), resource);
                }
            });
}
 
源代码6 项目: mvvm-template   文件: DrawableGetter.java
@Override public Drawable getDrawable(@NonNull String url) {
    final UrlDrawable urlDrawable = new UrlDrawable();
    if (container != null && container.get() != null) {
        Context context = container.get().getContext();
        final GenericRequestBuilder load = Glide.with(context)
                .load(url)
                .dontAnimate();
        final GlideDrawableTarget target = new GlideDrawableTarget(urlDrawable, container, width);
        load.into(target);
        cachedTargets.add(target);
    }
    return urlDrawable;
}
 
源代码7 项目: Silence   文件: ThumbnailView.java
private GenericRequestBuilder buildThumbnailGlideRequest(@NonNull Slide slide, @NonNull MasterSecret masterSecret) {
  @SuppressWarnings("ConstantConditions")
  DrawableRequestBuilder<DecryptableUri> builder = Glide.with(getContext()).load(new DecryptableUri(masterSecret, slide.getThumbnailUri()))
                                                                           .crossFade()
                                                                           .transform(new RoundedCorners(getContext(), true, radius, backgroundColorHint));

  if (slide.isInProgress()) return builder;
  else                      return builder.error(R.drawable.ic_missing_thumbnail_picture);
}
 
源代码8 项目: MoeGallery   文件: MainModule.java
@Singleton
@Provides
GenericRequestBuilder<GlideUrl, InputStream, byte[], GifDrawable> provideGifRequestBuilder(
        RequestManager requestManager, OkHttpClient okHttpClient) {

    return requestManager.using(new OkHttpUrlLoader(okHttpClient), InputStream.class)
            .from(GlideUrl.class)
            .as(byte[].class)
            .transcode(new GifDrawableBytesTranscoder(), GifDrawable.class)
            .diskCacheStrategy(DiskCacheStrategy.SOURCE)
            .decoder(new StreamByteArrayResourceDecoder())
            .sourceEncoder(new StreamEncoder())
            .cacheDecoder(new FileToStreamDecoder<>(new StreamByteArrayResourceDecoder()));
}
 
源代码9 项目: Jockey   文件: ArtistViewModel.java
@Bindable
public GenericRequestBuilder getHeroImage() {
    if (mLfmReference != null) {
        Image hero = mLfmReference.getImageBySize(Image.Size.MEGA);

        if (hero != null) {
            return Glide.with(getContext())
                    .load(hero.getUrl())
                    .diskCacheStrategy(DiskCacheStrategy.SOURCE)
                    .centerCrop()
                    .animate(android.R.anim.fade_in);
        }
    }
    return null;
}
 
源代码10 项目: Camera2   文件: PhotoItem.java
private GenericRequestBuilder<Uri, ?, ?, GlideDrawable> renderTinySize(Uri uri)
{
    return mGlideManager.loadTinyThumb(uri, generateSignature(mData));
}
 
源代码11 项目: glide-support   文件: LoadCycler.java
public LoadCycler(GenericRequestBuilder<M, ?, ?, T> request, ImageView imageView) {
	this(request, new DrawableImageViewTarget(imageView));
}
 
源代码12 项目: glide-support   文件: LoadCycler.java
public LoadCycler(GenericRequestBuilder<M, ?, ?, T> request, Target<? super T> target) {
	this.target = target;
	prev = copy(request);
	curr = copy(request);
	next = copy(request);
}
 
源代码13 项目: glide-support   文件: LoadCycler.java
private GenericRequestBuilder<M, ?, ?, T> copy(GenericRequestBuilder<M, ?, ?, T> request) {
	return request.clone().dontAnimate().thumbnail(null).listener(null).load(null);
}
 
源代码14 项目: glide-support   文件: LoadCycler.java
private void rotate() {
	GenericRequestBuilder<M, ?, ?, T> temp = prev;
	prev = curr;
	curr = next;
	next = temp;
}
 
源代码15 项目: Silence   文件: ThumbnailView.java
private GenericRequestBuilder buildPlaceholderGlideRequest(Slide slide) {
  return Glide.with(getContext()).load(slide.getPlaceholderRes(getContext().getTheme()))
                                 .asBitmap()
                                 .fitCenter();
}
 
源代码16 项目: Jockey   文件: GlideBindingAdapters.java
@BindingAdapter("android:src")
public static void bindImage(ImageView imageView, GenericRequestBuilder request) {
    if (request != null) {
        request.into(imageView);
    }
}
 
源代码17 项目: Jockey   文件: AlbumViewModel.java
@Bindable
public GenericRequestBuilder getHeroImage() {
    return Glide.with(getContext()).load(mAlbum.getArtUri()).centerCrop();
}
 
源代码18 项目: RichText   文件: GlideImageGetter.java
@Override
public Drawable getDrawable(ImageHolder holder, final RichTextConfig config, TextView textView) {
    final ImageTarget target;
    final GenericRequestBuilder load;
    DrawableTypeRequest dtr;
    DrawableWrapper drawableWrapper = new DrawableWrapper();
    byte[] src = Base64.decode(holder.getSource());
    if (src != null) {
        dtr = Glide.with(textView.getContext()).load(src);
    } else {
        dtr = Glide.with(textView.getContext()).load(holder.getSource());
    }
    Rect rect = null;
    if (config.cacheType >= CacheType.LAYOUT) {
        rect = loadCache(holder.getSource());
        if (rect != null) {
            drawableWrapper.setBounds(rect);
        }
    } else {
        drawableWrapper.setBounds(0, 0, holder.getWidth(), holder.getHeight());
    }
    if (holder.isGif()) {
        target = new ImageTargetGif(textView, drawableWrapper, holder, config, this, rect);
        load = dtr.asGif();
    } else {
        target = new ImageTargetBitmap(textView, drawableWrapper, holder, config, this, rect);
        load = dtr.asBitmap().atMost();
    }
    checkTag(textView);
    targets.add(target);
    if (!config.resetSize && holder.isInvalidateSize()) {
        load.override(holder.getWidth(), holder.getHeight());
    }
    if (holder.getScaleType() == ImageHolder.ScaleType.CENTER_CROP) {
        if (holder.isGif()) {
            //noinspection ConstantConditions
            ((GifTypeRequest) load).centerCrop();
        } else {
            //noinspection ConstantConditions
            ((BitmapTypeRequest) load).centerCrop();
        }
    } else if (holder.getScaleType() == ImageHolder.ScaleType.FIT_CENTER) {
        if (holder.isGif()) {
            //noinspection ConstantConditions
            ((GifTypeRequest) load).fitCenter();
        } else {
            //noinspection ConstantConditions
            ((BitmapTypeRequest) load).fitCenter();
        }
    }
    textView.post(new Runnable() {
        @Override
        public void run() {
            load.placeholder(config.placeHolder).error(config.errorImage).into(target);
        }
    });
    drawableWrapper.setCallback(textView);
    return drawableWrapper;
}
 
 类所在包
 类方法
 同包方法