类com.bumptech.glide.load.resource.bitmap.GlideBitmapDrawable源码实例Demo

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

源代码1 项目: Anecdote   文件: CustomImageView.java
@Nullable
public File saveImage(){

    Drawable drawable = getDrawable();
    Bitmap bitmap = null;

    if(drawable instanceof BitmapDrawable){
        bitmap = ((BitmapDrawable) drawable).getBitmap();
    } else if (drawable instanceof GlideDrawable){
        bitmap = ((GlideBitmapDrawable)drawable.getCurrent()).getBitmap();
    }

    File output = new ImageSaver(getContext())
            .setExternal(true)
            .setDirectoryName(Configuration.DOWNLOAD_FOLDER)
            .setFileName(getContext().getString(R.string.app_name) + "-" + System.currentTimeMillis() + ".jpg")
            .save(bitmap);

    if(output != null){
        return output;
    }
    return null;
}
 
源代码2 项目: DGameDetail   文件: ScreenshotFragment.java
/**
 * 旋转操作
 *
 * @param angle 旋转角度
 */
@Deprecated
private void rotation(int angle) {
    Matrix matrix = new Matrix();
    matrix.postRotate(angle);
    Drawable drawable = mBannerImg.getDrawable();
    if (drawable != null) {
        Bitmap bm;
        if (drawable instanceof BitmapDrawable) {
            bm = ((BitmapDrawable) drawable).getBitmap();
        } else if (drawable instanceof GlideBitmapDrawable) {
            bm = ((GlideBitmapDrawable) drawable).getBitmap();
        } else {
            Drawable d = ((TransitionDrawable) drawable).getDrawable(1);
            bm = ((BitmapDrawable) d).getBitmap();
        }
        int bW = bm.getWidth();
        int bH = bm.getHeight();
        Bitmap resizeBm = Bitmap.createBitmap(bm, 0, 0, bW, bH, matrix, true);
        mBannerImg.setScaleType(ImageView.ScaleType.FIT_XY);
        mBannerImg.setImageBitmap(resizeBm);
        mBannerImg.requestLayout();
    }
}
 
源代码3 项目: youqu_master   文件: BookSeriesCeilHolder.java
private void initEvent() {
    Glide.with(BaseApplication.getAppContext())
            .load(mBookInfoResponse.getImages().getLarge())
            .into(iv_book_img);
    tv_title.setText(mBookInfoResponse.getTitle());
    ratingBar_hots.setRating(Float.valueOf(mBookInfoResponse.getRating().getAverage()) / 2);
    tv_hots_num.setText(mBookInfoResponse.getRating().getAverage());
    mContentView.setOnClickListener(v -> {
        Bundle b = new Bundle();
        b.putSerializable(BookInfoBean.serialVersionName, mBookInfoResponse);
        Bitmap bitmap;

        bitmap = ((GlideBitmapDrawable) (iv_book_img.getDrawable())).getBitmap();
        b.putParcelable("book_img", bitmap);
        Intent intent = new Intent(BaseApplication.getAppContext(), BookDetailActivity.class);
        intent.putExtras(b);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            if (mContext == null) {
                startActivity(intent);
                return;
            }
            ActivityOptionsCompat options = ActivityOptionsCompat.
                    makeSceneTransitionAnimation(mContext, iv_book_img, "book_img");
            startActivity(intent, options.toBundle());
        } else {
            startActivity(intent);
        }
    });
}
 
源代码4 项目: ImageLoadPK   文件: SimpleActivity.java
@Override
public boolean onResourceReady(GlideBitmapDrawable resource, String model, Target<GlideBitmapDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
    dissProgress();
    Log.d(TAG, "onResourceReady: " + isFromMemoryCache);
    if (isFromMemoryCache) {
        mIvShow.setAnimation(AnimationUtils.loadAnimation(mContext, R.anim.scale));
    }
    return false;
}
 
源代码5 项目: MaterialHome   文件: EBookSeriesCeilHolder.java
private void initEvent() {
    Glide.with(UIUtils.getContext())
            .load(EBookUtils.getImageUrl(tagBook.getCover()))
            .into(iv_book_img);
    float ratio = 0;
    try {
        ratio = Float.parseFloat(tagBook.getRetentionRatio()) / 20;
    } catch (Exception e) {
        e.printStackTrace();
    }
    tv_title.setText(tagBook.getTitle());
    ratingBar_hots.setRating(ratio);
    tv_hots_num.setText(tagBook.getLatelyFollower() + "人在追");
    mContentView.setOnClickListener(v -> {
        Bundle b = new Bundle();
        b.putParcelable("BookDetail", tagBook);
        b.putString("bookId", tagBook.getId());
        Bitmap bitmap;
        GlideBitmapDrawable imageDrawable = (GlideBitmapDrawable) iv_book_img.getDrawable();
        if (imageDrawable != null) {
            bitmap = imageDrawable.getBitmap();
            b.putParcelable("book_img", bitmap);
        }
        Intent intent = new Intent(UIUtils.getContext(), EBookDetailActivity.class);
        intent.putExtras(b);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            if (BaseActivity.activity == null) {
                UIUtils.startActivity(intent);
                return;
            }
            ActivityOptionsCompat options = ActivityOptionsCompat.
                    makeSceneTransitionAnimation(BaseActivity.activity, iv_book_img, "book_img");
            BaseActivity.activity.startActivity(intent, options.toBundle());
        } else {
            UIUtils.startActivity(intent);
        }
    });
}
 
源代码6 项目: MaterialHome   文件: BookSeriesCeilHolder.java
private void initEvent() {
    Glide.with(UIUtils.getContext())
            .load(mBookInfoResponse.getImages().getLarge())
            .into(iv_book_img);
    tv_title.setText(mBookInfoResponse.getTitle());
    ratingBar_hots.setRating(Float.valueOf(mBookInfoResponse.getRating().getAverage()) / 2);
    tv_hots_num.setText(mBookInfoResponse.getRating().getAverage());
    mContentView.setOnClickListener(v -> {
        Bundle b = new Bundle();
        b.putSerializable(BookInfoResponse.serialVersionName, mBookInfoResponse);
        Bitmap bitmap;

        bitmap = ((GlideBitmapDrawable) (iv_book_img.getDrawable())).getBitmap();
        b.putParcelable("book_img", bitmap);
        Intent intent = new Intent(UIUtils.getContext(), BookDetailActivity.class);
        intent.putExtras(b);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
            if (BaseActivity.activity == null) {
                UIUtils.startActivity(intent);
                return;
            }
            ActivityOptionsCompat options = ActivityOptionsCompat.
                    makeSceneTransitionAnimation(BaseActivity.activity, iv_book_img, "book_img");
            BaseActivity.activity.startActivity(intent, options.toBundle());
        } else {
            UIUtils.startActivity(intent);
        }
    });
}
 
源代码7 项目: MaterialHome   文件: BookListAdapter.java
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) {
    if (holder instanceof BookListHolder) {
        final BookInfoResponse bookInfo = bookInfoResponses.get(position);
        Glide.with(mContext)
                .load(bookInfo.getImages().getLarge())
                .into(((BookListHolder) holder).iv_book_img);
        ((BookListHolder) holder).tv_book_title.setText(bookInfo.getTitle());
        ((BookListHolder) holder).ratingBar_hots.setRating(Float.valueOf(bookInfo.getRating().getAverage()) / 2);
        ((BookListHolder) holder).tv_hots_num.setText(bookInfo.getRating().getAverage());
        ((BookListHolder) holder).tv_book_info.setText(bookInfo.getInfoString());
        ((BookListHolder) holder).tv_book_description.setText("\u3000" + bookInfo.getSummary());
        ((BookListHolder) holder).itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Bundle b = new Bundle();
                b.putSerializable(BookInfoResponse.serialVersionName, bookInfo);
                Bitmap bitmap;
                GlideBitmapDrawable imageDrawable = (GlideBitmapDrawable) ((BookListHolder) holder).iv_book_img.getDrawable();
                if (imageDrawable != null) {
                    bitmap = imageDrawable.getBitmap();
                    b.putParcelable("book_img", bitmap);
                }
                Intent intent = new Intent(UIUtils.getContext(), BookDetailActivity.class);
                intent.putExtras(b);
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                    if (BaseActivity.activity == null) {
                        UIUtils.startActivity(intent);
                        return;
                    }
                    ActivityOptionsCompat options = ActivityOptionsCompat.
                            makeSceneTransitionAnimation(BaseActivity.activity, ((BookListHolder) holder).iv_book_img, "book_img");
                    BaseActivity.activity.startActivity(intent, options.toBundle());
                } else {
                    UIUtils.startActivity(intent);
                }
            }
        });
    }
}
 
源代码8 项目: android-proguards   文件: DribbbleTarget.java
@Override
public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable>
        animation) {
    super.onResourceReady(resource, animation);
    if (!autoplayGifs) {
        resource.stop();
    }

    BadgedFourThreeImageView badgedImageView = (BadgedFourThreeImageView) getView();
    if (resource instanceof GlideBitmapDrawable) {
        Palette.from(((GlideBitmapDrawable) resource).getBitmap())
                .clearFilters()
                .generate(this);
    } else if (resource instanceof GifDrawable) {
        Bitmap image = ((GifDrawable) resource).getFirstFrame();
        Palette.from(image).clearFilters().generate(this);

        // look at the corner to determine the gif badge color
        int cornerSize = (int) (56 * getView().getContext().getResources().getDisplayMetrics
                ().scaledDensity);
        Bitmap corner = Bitmap.createBitmap(image,
                image.getWidth() - cornerSize,
                image.getHeight() - cornerSize,
                cornerSize, cornerSize);
        boolean isDark = ColorUtils.isDark(corner);
        corner.recycle();
        badgedImageView.setBadgeColor(ContextCompat.getColor(getView().getContext(),
                isDark ? R.color.gif_badge_dark_image : R.color.gif_badge_light_image));
    }
}
 
源代码9 项目: android-proguards   文件: GlideUtils.java
public static Bitmap getBitmap(GlideDrawable glideDrawable) {
    if (glideDrawable instanceof GlideBitmapDrawable) {
        return ((GlideBitmapDrawable) glideDrawable).getBitmap();
    } else if (glideDrawable instanceof GifDrawable) {
        return ((GifDrawable) glideDrawable).getFirstFrame();
    }
    return null;
}
 
源代码10 项目: RxPalette   文件: MainActivity.java
@Override
public boolean onResourceReady(
        GlideDrawable resource,
        String model,
        Target<GlideDrawable> target,
        boolean isFromMemoryCache,
        boolean isFirstResource) {
    onBitmapReady(GlideBitmapDrawable.class.cast(resource).getBitmap());
    return false;
}
 
源代码11 项目: giffun   文件: Glide.java
Glide(Engine engine, MemoryCache memoryCache, BitmapPool bitmapPool, Context context, DecodeFormat decodeFormat, DiskCache.Factory diskCacheFactory) {
    this.engine = engine;
    this.bitmapPool = bitmapPool;
    this.memoryCache = memoryCache;
    this.decodeFormat = decodeFormat;
    this.diskCacheFactory = diskCacheFactory;
    loaderFactory = new GenericLoaderFactory(context);
    mainHandler = new Handler(Looper.getMainLooper());
    bitmapPreFiller = new BitmapPreFiller(memoryCache, bitmapPool, decodeFormat);

    dataLoadProviderRegistry = new DataLoadProviderRegistry();

    StreamBitmapDataLoadProvider streamBitmapLoadProvider =
            new StreamBitmapDataLoadProvider(bitmapPool, decodeFormat);
    dataLoadProviderRegistry.register(InputStream.class, Bitmap.class, streamBitmapLoadProvider);

    FileDescriptorBitmapDataLoadProvider fileDescriptorLoadProvider =
            new FileDescriptorBitmapDataLoadProvider(bitmapPool, decodeFormat);
    dataLoadProviderRegistry.register(ParcelFileDescriptor.class, Bitmap.class, fileDescriptorLoadProvider);

    ImageVideoDataLoadProvider imageVideoDataLoadProvider =
            new ImageVideoDataLoadProvider(streamBitmapLoadProvider, fileDescriptorLoadProvider);
    dataLoadProviderRegistry.register(ImageVideoWrapper.class, Bitmap.class, imageVideoDataLoadProvider);

    GifDrawableLoadProvider gifDrawableLoadProvider =
            new GifDrawableLoadProvider(context, bitmapPool);
    dataLoadProviderRegistry.register(InputStream.class, GifDrawable.class, gifDrawableLoadProvider);

    dataLoadProviderRegistry.register(ImageVideoWrapper.class, GifBitmapWrapper.class,
            new ImageVideoGifDrawableLoadProvider(imageVideoDataLoadProvider, gifDrawableLoadProvider, bitmapPool));

    dataLoadProviderRegistry.register(InputStream.class, File.class, new StreamFileDataLoadProvider());

    register(File.class, ParcelFileDescriptor.class, new FileDescriptorFileLoader.Factory());
    register(File.class, InputStream.class, new StreamFileLoader.Factory());
    register(int.class, ParcelFileDescriptor.class, new FileDescriptorResourceLoader.Factory());
    register(int.class, InputStream.class, new StreamResourceLoader.Factory());
    register(Integer.class, ParcelFileDescriptor.class, new FileDescriptorResourceLoader.Factory());
    register(Integer.class, InputStream.class, new StreamResourceLoader.Factory());
    register(String.class, ParcelFileDescriptor.class, new FileDescriptorStringLoader.Factory());
    register(String.class, InputStream.class, new StreamStringLoader.Factory());
    register(Uri.class, ParcelFileDescriptor.class, new FileDescriptorUriLoader.Factory());
    register(Uri.class, InputStream.class, new StreamUriLoader.Factory());
    register(URL.class, InputStream.class, new StreamUrlLoader.Factory());
    register(GlideUrl.class, InputStream.class, new HttpUrlGlideUrlLoader.Factory());
    register(byte[].class, InputStream.class, new StreamByteArrayLoader.Factory());

    transcoderRegistry.register(Bitmap.class, GlideBitmapDrawable.class,
            new GlideBitmapDrawableTranscoder(context.getResources(), bitmapPool));
    transcoderRegistry.register(GifBitmapWrapper.class, GlideDrawable.class,
            new GifBitmapWrapperDrawableTranscoder(
                    new GlideBitmapDrawableTranscoder(context.getResources(), bitmapPool)));

    bitmapCenterCrop = new CenterCrop(bitmapPool);
    drawableCenterCrop = new GifBitmapWrapperTransformation(bitmapPool, bitmapCenterCrop);

    bitmapFitCenter = new FitCenter(bitmapPool);
    drawableFitCenter = new GifBitmapWrapperTransformation(bitmapPool, bitmapFitCenter);
}
 
public GifBitmapWrapperDrawableTranscoder(
        ResourceTranscoder<Bitmap, GlideBitmapDrawable> bitmapDrawableResourceTranscoder) {
    this.bitmapDrawableResourceTranscoder = bitmapDrawableResourceTranscoder;
}
 
源代码13 项目: giffun   文件: GlideBitmapDrawableTranscoder.java
@Override
public Resource<GlideBitmapDrawable> transcode(Resource<Bitmap> toTranscode) {
    GlideBitmapDrawable drawable = new GlideBitmapDrawable(resources, toTranscode.get());
    return new GlideBitmapDrawableResource(drawable, bitmapPool);
}
 
源代码14 项目: ReadMark   文件: BookListAdapter.java
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) {
    if(holder instanceof BookListHolder){
        final BookInfoResponse bookInfo = bookInfoResponses.get(position);
        Glide.with(mContext)
                .load(bookInfo.getImages().getLarge())
                .into(((BookListHolder) holder).iv_book_img);
        ((BookListHolder) holder).tv_book_title.setText(bookInfo.getTitle());
        ((BookListHolder) holder).ratingBar_hots.setRating(Float.valueOf(bookInfo.getRating().getAverage()) / 2);
        ((BookListHolder) holder).tv_hots_num.setText(bookInfo.getRating().getAverage());
        ((BookListHolder) holder).tv_book_info.setText(bookInfo.getInfoString());
        ((BookListHolder) holder).tv_book_description.setText("\u3000" + bookInfo.getSummary());
        ((BookListHolder) holder).itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Bundle b = new Bundle();
                b.putSerializable("book_info", bookInfo);
                GlideBitmapDrawable drawable = (GlideBitmapDrawable) ((BookListHolder) holder).iv_book_img.getDrawable();
                Bitmap bitmap = drawable.getBitmap();
                b.putParcelable("book_image", bitmap);
                Intent intent = new Intent(UIUtils.getContext(), BookDetailActivity.class);
                intent.putExtras(b);

                //如果版本大于5.0
                if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
                    if(BaseActivity.activity == null){
                        UIUtils.startActivity(intent);
                        return;
                    }
                    ActivityOptionsCompat optionsCompat = ActivityOptionsCompat
                            .makeSceneTransitionAnimation(BaseActivity.activity
                                    , ((BookListHolder) holder).iv_book_img
                                    , "book_img");
                    BaseActivity.activity.startActivity(intent, optionsCompat.toBundle());
                }else{
                    //如果版本小于5.0,直接启动,无过渡动画
                    UIUtils.startActivity(intent);
                }
            }
        });

    }
}
 
源代码15 项目: tribbble   文件: ShotActivity.java
@Override public void onResourceReady(GlideDrawable resource, GlideAnimation<? super GlideDrawable> animation) {
  super.onResourceReady(resource, animation);
  callback.call(((GlideBitmapDrawable) resource).getBitmap());
}
 
源代码16 项目: ImageLoadPK   文件: SimpleActivity.java
@Override
public boolean onException(Exception e, String model, Target<GlideBitmapDrawable> target, boolean isFirstResource) {
    return false;
}
 
源代码17 项目: ImageLoadPK   文件: SimpleActivity.java
@Override
public boolean onResourceReady(GlideBitmapDrawable resource, String model, Target<GlideBitmapDrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
    dissProgress();
    return false;
}
 
源代码18 项目: ImageLoadPK   文件: SimpleActivity.java
@Override
public boolean onException(Exception e, String model, Target<GlideBitmapDrawable> target, boolean isFirstResource) {
    return false;
}
 
源代码19 项目: MaterialHome   文件: EBookListAdapter.java
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) {
    if (holder instanceof EBookListHolder) {
        final BookDetail bookInfo = bookInfoResponses.get(position);
        Glide.with(mContext)
                .load(EBookUtils.getImageUrl(bookInfo.getCover()))
                .into(((EBookListHolder) holder).iv_book_img);
        ((EBookListHolder) holder).tv_book_title.setText(bookInfo.getTitle());
        float ratio = 0;
        try {
            ratio = Float.parseFloat(bookInfo.getRetentionRatio()) / 20;
        } catch (Exception e) {
            e.printStackTrace();
        }
        ((EBookListHolder) holder).ratingBar_hots.setRating(ratio);
        ((EBookListHolder) holder).tv_hots_num.setText(bookInfo.getLatelyFollower() + "人在追");
        ((EBookListHolder) holder).tv_book_info.setText(bookInfo.getBookInfoString());
        ((EBookListHolder) holder).tv_book_description.setText("\u3000" + bookInfo.getShortIntro());
        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Bundle b = new Bundle();
                b.putParcelable("BookDetail", bookInfo);
                b.putString("bookId", bookInfo.getId());
                Bitmap bitmap;
                GlideBitmapDrawable imageDrawable = (GlideBitmapDrawable) ((EBookListHolder) holder).iv_book_img.getDrawable();
                if (imageDrawable != null) {
                    bitmap = imageDrawable.getBitmap();
                    b.putParcelable("book_img", bitmap);
                }
                Intent intent = new Intent(mContext, EBookDetailActivity.class);
                intent.putExtras(b);
                if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
                    if (BaseActivity.activity == null) {
                        UIUtils.startActivity(intent);
                        return;
                    }
                    ActivityOptionsCompat options = ActivityOptionsCompat.
                            makeSceneTransitionAnimation(BaseActivity.activity, ((EBookListHolder) holder).iv_book_img, "book_img");
                    BaseActivity.activity.startActivity(intent, options.toBundle());
                } else {
                    UIUtils.startActivity(intent);
                }
            }
        });
    }
}
 
源代码20 项目: ReadMark   文件: BookListAdapter.java
@Override
public void onBindViewHolder(final RecyclerView.ViewHolder holder, int position) {
    if(holder instanceof BookListHolder){
        final BookInfoResponse bookInfo = bookInfoResponses.get(position);
        Glide.with(mContext)
                .load(bookInfo.getImages().getLarge())
                .into(((BookListHolder) holder).iv_book_img);
        ((BookListHolder) holder).tv_book_title.setText(bookInfo.getTitle());
        ((BookListHolder) holder).ratingBar_hots.setRating(Float.valueOf(bookInfo.getRating().getAverage()) / 2);
        ((BookListHolder) holder).tv_hots_num.setText(bookInfo.getRating().getAverage());
        ((BookListHolder) holder).tv_book_info.setText(bookInfo.getInfoString());
        ((BookListHolder) holder).tv_book_description.setText("\u3000" + bookInfo.getSummary());
        ((BookListHolder) holder).itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Bundle b = new Bundle();
                b.putSerializable("book_info", bookInfo);
                GlideBitmapDrawable drawable = (GlideBitmapDrawable) ((BookListHolder) holder).iv_book_img.getDrawable();
                Bitmap bitmap = drawable.getBitmap();
                b.putParcelable("book_image", bitmap);
                Intent intent = new Intent(UIUtils.getContext(), BookDetailActivity.class);
                intent.putExtras(b);

                //如果版本大于5.0
                if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP){
                    if(BaseActivity.activity == null){
                        UIUtils.startActivity(intent);
                        return;
                    }
                    ActivityOptionsCompat optionsCompat = ActivityOptionsCompat
                            .makeSceneTransitionAnimation(BaseActivity.activity
                                    , ((BookListHolder) holder).iv_book_img
                                    , "book_img");
                    BaseActivity.activity.startActivity(intent, optionsCompat.toBundle());
                }else{
                    //如果版本小于5.0,直接启动,无过渡动画
                    UIUtils.startActivity(intent);
                }
            }
        });

    }
}
 
@Override
public boolean onResourceReady(GlideBitmapDrawable loadedBitmap, String imageUri, Target target, boolean isFromMemoryCache, boolean isFirstResource) {
    initMaskedImageView(loadedBitmap.getBitmap());
    fileUtils.checkExistsFile(imageUri, loadedBitmap.getBitmap());
    return false;
}
 
 类所在包
 类方法
 同包方法