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

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

源代码1 项目: mollyim-android   文件: ThumbnailView.java
public ListenableFuture<Boolean> setImageResource(@NonNull GlideRequests glideRequests, @NonNull Uri uri, int width, int height) {
  SettableFuture<Boolean> future = new SettableFuture<>();

  if (transferControls.isPresent()) getTransferControls().setVisibility(View.GONE);

  GlideRequest request = glideRequests.load(new DecryptableUri(uri))
                                      .diskCacheStrategy(DiskCacheStrategy.NONE)
                                      .transition(withCrossFade());

  if (width > 0 && height > 0) {
    request = request.override(width, height);
  }

  if (radius > 0) {
    request = request.transforms(new CenterCrop(), new RoundedCorners(radius));
  } else {
    request = request.transforms(new CenterCrop());
  }

  request.into(new GlideDrawableListeningTarget(image, future));
  blurhash.setImageDrawable(null);

  return future;
}
 
源代码2 项目: mollyim-android   文件: ThumbnailView.java
private GlideRequest applySizing(@NonNull GlideRequest request, @NonNull BitmapTransformation fitting) {
  int[] size = new int[2];
  fillTargetDimensions(size, dimens, bounds);
  if (size[WIDTH] == 0 && size[HEIGHT] == 0) {
    size[WIDTH]  = getDefaultWidth();
    size[HEIGHT] = getDefaultHeight();
  }

  request = request.override(size[WIDTH], size[HEIGHT]);
  
  if (radius > 0) {
    return request.transforms(fitting, new RoundedCorners(radius));
  } else {
    return request.transforms(fitting);
  }
}
 
@SuppressWarnings("unchecked")
private void setupGlideOptions() {
   	options = new RequestOptions();

   	if (isShapeCircle) {
   		if (Defaults.CIRCLE_RADIUS > 0) {
   			options.transforms(new CenterCrop(), new RoundedCorners(Defaults.CIRCLE_RADIUS));

   		} else {
   			options.circleCrop();
   		}
   	}

   	options.override(Defaults.IMAGE_HEIGHT, Defaults.IMAGE_HEIGHT);
   	options.placeholder(placeholder_image);
   	options.priority(Priority.HIGH);
}
 
@SuppressWarnings("unchecked")
private void setupGlideOptions() {
   	options = new RequestOptions();
   	int size;

   	if (isShapeCircle) {
   		if (Defaults.CIRCLE_RADIUS > 0) {
   			size = (int) (0.65 * Defaults.IMAGE_HEIGHT);
   			options.transforms(new CenterCrop(), new RoundedCorners(Defaults.CIRCLE_RADIUS));

   		} else {
   			size = Defaults.IMAGE_HEIGHT;
   			options.circleCrop();
   		}

   	} else {
   		size = (int) (0.65 * Defaults.IMAGE_HEIGHT);
   	}

   	options.override(size, size);
   	options.error(error_image);
   	options.priority(Priority.HIGH);
   }
 
@SuppressWarnings("unchecked")
private void setupGlideOptions() {
   	options = new RequestOptions();

   	if (isShapeCircle) {
   		if (Defaults.CIRCLE_RADIUS > 0) {
   			options.transforms(new CenterCrop(), new RoundedCorners(Defaults.CIRCLE_RADIUS));

   		} else {
   			options.circleCrop();
   		}
   	}

   	options.override(Defaults.IMAGE_HEIGHT, Defaults.IMAGE_HEIGHT);
   	options.placeholder(placeholder_image);
   	options.priority(Priority.HIGH);
}
 
@SuppressWarnings({ "unchecked", "deprecation" })
private void setupGlideOptions() {
    	options = new RequestOptions();
    	int size;

    	if (isShapeCircle) {
    		if (Defaults.CIRCLE_RADIUS > 0) {
    			size = (int) (0.65 * Defaults.IMAGE_HEIGHT);
    			options.transforms(new CenterCrop(), new RoundedCorners(Defaults.CIRCLE_RADIUS));

    		} else {
    			size = Defaults.IMAGE_HEIGHT;
    			options.circleCrop();
    		}

    	} else {
    		size = (int) (0.65 * Defaults.IMAGE_HEIGHT);
    	}

    	options.override(size, size);
    	options.error(error_image);
    	options.priority(Priority.HIGH);
   }
 
源代码7 项目: aptoide-client-v8   文件: ImageLoader.java
public Target<Drawable> loadWithColorPlaceholderRoundCorners(String image, int radius,
    ImageView previewImage, @AttrRes int colorResource,
    RequestListener<Drawable> requestListener) {
  Context context = weakContext.get();
  if (context != null) {
    return Glide.with(context)
        .load(image)
        .apply(getRequestOptions().centerCrop()
            .placeholder(new ColorDrawable(getAttrColor(colorResource)))
            .transforms(new CenterCrop(), new RoundedCorners(radius)))
        .listener(requestListener)
        .transition(DrawableTransitionOptions.withCrossFade())
        .into(previewImage);
  }
  return null;
}
 
源代码8 项目: hipda   文件: GlideHelper.java
public static void loadAvatar(RequestManager glide, ImageView view, String avatarUrl) {
    avatarUrl = Utils.nullToText(avatarUrl);
    String cacheKey = AVATAR_CACHE_KEYS.get(avatarUrl);
    if (cacheKey == null) {
        cacheKey = avatarUrl;
    }
    if (HiSettingsHelper.getInstance().isCircleAvatar()) {
        glide.load(new AvatarModel(avatarUrl))
                .signature(new ObjectKey(cacheKey))
                .diskCacheStrategy(DiskCacheStrategy.NONE)
                .circleCrop()
                .error(DEFAULT_USER_ICON)
                .transition(DrawableTransitionOptions.withCrossFade())
                .into(view);
    } else {
        glide.load(new AvatarModel(avatarUrl))
                .signature(new ObjectKey(cacheKey))
                .diskCacheStrategy(DiskCacheStrategy.NONE)
                .transform(new CenterCrop(), new RoundedCorners(Utils.dpToPx(4)))
                .error(DEFAULT_USER_ICON)
                .transition(DrawableTransitionOptions.withCrossFade())
                .into(view);
    }
}
 
源代码9 项目: DevUtils   文件: ProjectUtils.java
/**
 * 获取圆角 RequestOptions
 * @return 圆角 {@link RequestOptions}
 */
public static RequestOptions getRoundOptions() {
    if (sRoundOptions == null) {
        // 获取默认 RequestOptions
        sRoundOptions = GlideUtils.defaultOptions();
        // 设置圆角, 使用 RoundedCorners 图片不会闪烁
        sRoundOptions.transform(new RoundedCorners(ResourceUtils.getDimensionInt(R.dimen.un_radius)));
    }
    return sRoundOptions;
}
 
源代码10 项目: DevUtils   文件: ProjectUtils.java
/**
 * 获取圆角 RequestOptions
 * @return 圆角 {@link RequestOptions}
 */
public static RequestOptions getRoundOptions10() {
    // 获取默认 RequestOptions
    RequestOptions roundOptions = GlideUtils.defaultOptions();
    // 设置圆角, 使用 RoundedCorners 图片不会闪烁
    return roundOptions.transform(new RoundedCorners(ResourceUtils.getDimensionInt(R.dimen.un_radius_10)));
}
 
源代码11 项目: PopularMovies   文件: BindingAdapters.java
/**
 * Movie details poster image
 */
@BindingAdapter({"imageUrl"})
public static void bindImage(ImageView imageView, String imagePath) {
    GlideApp.with(imageView.getContext())
            .load(Constants.IMAGE_URL + imagePath)
            .placeholder(R.color.md_grey_200)
            .apply(new RequestOptions().transforms(new CenterCrop(),
                    new RoundedCorners((int) UiUtils.dipToPixels(imageView.getContext(), 8))))
            .into(imageView);
}
 
源代码12 项目: NewsApp   文件: NewsGlideModule.java
@NonNull
@GlideOption
public static RequestOptions roundedCornerImage(RequestOptions options, @NonNull Context context, int radius) {
    if (radius > 0) {
        int px = Math.round(radius * (context.getResources().getDisplayMetrics().xdpi / DisplayMetrics.DENSITY_DEFAULT));
        return options.transforms(new CenterCrop(), new RoundedCorners(px));
    }
    return options.transforms(new CenterCrop());
}
 
源代码13 项目: VMLibrary   文件: PickerLoader.java
/**
 * 通过上下文对象加载图片
 *
 * @param context   上下文对象
 * @param options   加载配置
 * @param imageView 目标控件
 */
@Override
public void load(Context context, Options options, ImageView imageView) {
    RequestOptions requestOptions = new RequestOptions();
    if (options.isCircle) {
        requestOptions.circleCrop();
    } else if (options.isRadius) {
        requestOptions.transform(new MultiTransformation<>(new CenterCrop(), new RoundedCorners(options.radiusSize)));
    }
    GlideApp.with(context).load(options.url).apply(requestOptions).into(imageView);
}
 
源代码14 项目: XDroidMvp   文件: GlideLoader.java
@Override
public void loadCorner(String url, final ImageView target, int radius, Options options) {
    RequestOptions requestOptions = wrapScaleType(options);

    //设置图片圆角角度
    MultiTransformation multiTransformation = new MultiTransformation<Bitmap>(new CenterCrop(), new RoundedCorners(radius));
    requestOptions.transform(multiTransformation);

    getRequestManager(target.getContext())
            .load(url)
            .apply(requestOptions)
            .transition(withCrossFade())
            .into(target);

}
 
源代码15 项目: aptoide-client-v8   文件: ImageLoader.java
public void loadWithRoundCorners(String image, int radius, ImageView previewImage,
    @AttrRes int placeHolderDrawableId) {
  Context context = weakContext.get();
  if (context != null) {
    Glide.with(context)
        .load(image)
        .apply(getRequestOptions().centerCrop()
            .placeholder(getAttrDrawable(placeHolderDrawableId))
            .transforms(new CenterInside(), new RoundedCorners(radius)))
        .transition(DrawableTransitionOptions.withCrossFade())
        .into(previewImage);
  }
}
 
源代码16 项目: aptoide-client-v8   文件: ImageLoader.java
public Target<Drawable> loadWithRoundCorners(String image, int radius, ImageView previewImage,
    @AttrRes int placeHolderDrawableId, RequestListener<Drawable> requestListener) {
  Context context = weakContext.get();
  if (context != null) {
    return Glide.with(context)
        .load(image)
        .apply(getRequestOptions().centerCrop()
            .placeholder(getAttrDrawable(placeHolderDrawableId))
            .transforms(new CenterCrop(), new RoundedCorners(radius)))
        .listener(requestListener)
        .transition(DrawableTransitionOptions.withCrossFade())
        .into(previewImage);
  }
  return null;
}
 
源代码17 项目: deltachat-android   文件: ThumbnailView.java
public ListenableFuture<Boolean> setImageResource(@NonNull GlideRequests glideRequests, @NonNull Uri uri) {
  SettableFuture<Boolean> future = new SettableFuture<>();

  glideRequests.load(new DecryptableUri(uri))
               .diskCacheStrategy(DiskCacheStrategy.NONE)
               .transforms(new CenterCrop(), new RoundedCorners(radius))
               .transition(withCrossFade())
               .into(new GlideDrawableListeningTarget(image, future));

  return future;
}
 
源代码18 项目: deltachat-android   文件: ThumbnailView.java
private GlideRequest applySizing(@NonNull GlideRequest request, @NonNull BitmapTransformation fitting) {
  int[] size = new int[2];
  fillTargetDimensions(size, dimens, bounds);
  if (size[WIDTH] == 0 && size[HEIGHT] == 0) {
    size[WIDTH]  = getDefaultWidth();
    size[HEIGHT] = getDefaultHeight();
  }
  return request.override(size[WIDTH], size[HEIGHT])
                .transforms(fitting, new RoundedCorners(radius));
}
 
源代码19 项目: NIM_Android_UIKit   文件: GlideImageLoader.java
@Override
public void displayImage(Context context, String path, ImageView imageView, int width, int height) {
    RequestOptions options = new RequestOptions()
            .placeholder(R.drawable.nim_placeholder_normal_impl)     //设置占位图片
            .error(R.drawable.nim_placeholder_normal_impl)           //设置错误图片
            .diskCacheStrategy(DiskCacheStrategy.ALL)
            .transforms(new CenterCrop(), new RoundedCorners(ScreenUtil.dip2px(4)))
            .override(width, height)
            .dontAnimate();          //缓存全尺寸
    Glide.with(context)                             //配置上下文
         .asDrawable()
         .apply(options)
         .load(Uri.fromFile(new File(path)))      //设置图片路径(fix #8,文件名包含%符号 无法识别和显示)
         .into(imageView);
}
 
@Override
    public void loadImage(Context ctx, CommonImageConfigImpl config) {
        Preconditions.checkNotNull(ctx, "Context is required");
        Preconditions.checkNotNull(config, "ImageConfigImpl is required");
        if (TextUtils.isEmpty(config.getUrl())) throw new NullPointerException("Url is required");
        Preconditions.checkNotNull(config.getImageView(), "ImageView is required");


        GlideRequests requests;

        requests = GlideArms.with(ctx);//如果context是activity则自动使用Activity的生命周期

        GlideRequest<Drawable> glideRequest = requests.load(config.getUrl());
//

        switch (config.getCacheStrategy()) {//缓存策略
            case 0:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.ALL);
                break;
            case 1:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.NONE);
                break;
            case 2:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.RESOURCE);
                break;
            case 3:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.DATA);
                break;
            case 4:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.AUTOMATIC);
                break;
            default:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.ALL);
                break;
        }
        if (config.isCrossFade()) {
            glideRequest.transition(DrawableTransitionOptions.withCrossFade());
        }

        if (config.isImageRadius()) {
            glideRequest.transform(new RoundedCorners(config.getImageRadius()));
        }

        if (config.isBlurImage()) {
            glideRequest.transform(new BlurTransformation(config.getBlurValue()));
        }

        if (config.getTransformation() != null) {//glide用它来改变图形的形状
            glideRequest.transform(config.getTransformation());
        }

        if (config.getPlaceHolderDrawble() != null) {
            glideRequest.placeholder(config.getPlaceHolderDrawble());
        }
        if (config.getPlaceholder() != 0)//设置占位符
            glideRequest.placeholder(config.getPlaceholder());

        if (config.getErrorPic() != 0)//设置错误的图片
            glideRequest.error(config.getErrorPic());

        if (config.getFallback() != 0)//设置请求 url 为空图片
            glideRequest.fallback(config.getFallback());

        if (config.getResizeX() != 0 && config.getResizeY() != 0) {
            glideRequest.override(config.getResizeX(), config.getResizeY());
        }

        if (config.isCropCenter()) {
            glideRequest.centerCrop();
        }

        if (config.isCropCircle()) {
            glideRequest.circleCrop();
        }

        if (config.decodeFormate() != null) {
            glideRequest.format(config.decodeFormate());
        }

        if (config.isFitCenter()) {
            glideRequest.fitCenter();
        }

        glideRequest
                .into(config.getImageView());
    }
 
源代码21 项目: AndroidProject   文件: TestFragmentC.java
@SingleClick
@Override
public void onClick(View v) {
    switch (v.getId()) {
        case R.id.btn_test_image1:
            mImageView.setVisibility(View.VISIBLE);
            GlideApp.with(this)
                    .load("https://www.baidu.com/img/bd_logo.png")
                    .into(mImageView);
            break;
        case R.id.btn_test_image2:
            mImageView.setVisibility(View.VISIBLE);
            GlideApp.with(this)
                    .load("https://www.baidu.com/img/bd_logo.png")
                    .circleCrop()
                    .into(mImageView);
            break;
        case R.id.btn_test_image3:
            mImageView.setVisibility(View.VISIBLE);
            GlideApp.with(this)
                    .load("https://www.baidu.com/img/bd_logo.png")
                    .transform(new RoundedCorners((int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, 20, this.getResources().getDisplayMetrics())))
                    .into(mImageView);
            break;
        case R.id.btn_test_image4:
            PhotoActivity.start(getAttachActivity(), new PhotoActivity.OnPhotoSelectListener() {

                @Override
                public void onSelected(List<String> data) {
                    mImageView.setVisibility(View.VISIBLE);
                    GlideApp.with(getAttachActivity())
                            .load(data.get(0))
                            .into(mImageView);
                }

                @Override
                public void onCancel() {
                    toast("取消了");
                }
            });
            break;
        case R.id.btn_test_toast:
            toast("我是吐司");
            break;
        case R.id.btn_test_permission:
            XXPermissions.with(getAttachActivity())
                    // 可设置被拒绝后继续申请,直到用户授权或者永久拒绝
                    //.constantRequest()
                    // 支持请求6.0悬浮窗权限8.0请求安装权限
                    //.permission(Permission.SYSTEM_ALERT_WINDOW, Permission.REQUEST_INSTALL_PACKAGES)
                    // 不指定权限则自动获取清单中的危险权限
                    .permission(Permission.CAMERA)
                    .request(new OnPermission() {

                        @Override
                        public void hasPermission(List<String> granted, boolean isAll) {
                            if (isAll) {
                                toast("获取权限成功");
                            } else {
                                toast("获取权限成功,部分权限未正常授予");
                            }
                        }

                        @Override
                        public void noPermission(List<String> denied, boolean quick) {
                            if(quick) {
                                toast("被永久拒绝授权,请手动授予权限");
                                //如果是被永久拒绝就跳转到应用权限系统设置页面
                                XXPermissions.gotoPermissionSettings(getAttachActivity());
                            } else {
                                toast("获取权限失败");
                            }
                        }
                    });
            break;
        case R.id.btn_test_setting:
            XXPermissions.gotoPermissionSettings(getAttachActivity());
            break;
        case R.id.btn_test_state_black:
            if (getAttachActivity().getStatusBarConfig() != null) {
                getAttachActivity().getStatusBarConfig().statusBarDarkFont(true).init();
            }
            break;
        case R.id.btn_test_state_white:
            if (getAttachActivity().getStatusBarConfig() != null) {
                getAttachActivity().getStatusBarConfig().statusBarDarkFont(false).init();
            }
            break;
        default:
            break;
    }
}
 
@Override
    public void loadImage(Context ctx, CommonImageConfigImpl config) {
        Preconditions.checkNotNull(ctx, "Context is required");
        Preconditions.checkNotNull(config, "ImageConfigImpl is required");
        if (TextUtils.isEmpty(config.getUrl())) throw new NullPointerException("Url is required");
        Preconditions.checkNotNull(config.getImageView(), "ImageView is required");


        GlideRequests requests;

        requests = GlideArms.with(ctx);//如果context是activity则自动使用Activity的生命周期

        GlideRequest<Drawable> glideRequest = requests.load(config.getUrl());
//

        switch (config.getCacheStrategy()) {//缓存策略
            case 0:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.ALL);
                break;
            case 1:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.NONE);
                break;
            case 2:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.RESOURCE);
                break;
            case 3:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.DATA);
                break;
            case 4:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.AUTOMATIC);
                break;
            default:
                glideRequest.diskCacheStrategy(DiskCacheStrategy.ALL);
                break;
        }
        if (config.isCrossFade()) {
            glideRequest.transition(DrawableTransitionOptions.withCrossFade());
        }

        if (config.isImageRadius()) {
            glideRequest.transform(new RoundedCorners(config.getImageRadius()));
        }

        if (config.isBlurImage()) {
            glideRequest.transform(new BlurTransformation(config.getBlurValue()));
        }

        if (config.getTransformation() != null) {//glide用它来改变图形的形状
            glideRequest.transform(config.getTransformation());
        }

        if (config.getPlaceHolderDrawble() != null) {
            glideRequest.placeholder(config.getPlaceHolderDrawble());
        }
        if (config.getPlaceholder() != 0)//设置占位符
            glideRequest.placeholder(config.getPlaceholder());

        if (config.getErrorPic() != 0)//设置错误的图片
            glideRequest.error(config.getErrorPic());

        if (config.getFallback() != 0)//设置请求 url 为空图片
            glideRequest.fallback(config.getFallback());

        if (config.getResizeX() != 0 && config.getResizeY() != 0) {
            glideRequest.override(config.getResizeX(), config.getResizeY());
        }

        if (config.isCropCenter()) {
            glideRequest.centerCrop();
        }

        if (config.isCropCircle()) {
            glideRequest.circleCrop();
        }

        if (config.decodeFormate() != null) {
            glideRequest.format(config.decodeFormate());
        }

        if (config.isFitCenter()) {
            glideRequest.fitCenter();
        }

        glideRequest
                .into(config.getImageView());
    }
 
源代码23 项目: HaoReader   文件: FileSelectorAdapter.java
@Override
public void onBindViewHolder(@NonNull FileViewHolder holder, int position, @NonNull List<Object> payloads) {
    if (!payloads.isEmpty()) {
        holder.mChecker.setChecked(false);
    } else {
        final RipeFile item = files.get(holder.getLayoutPosition());
        holder.mTvName.setText(item.getName());
        if (item.isDirectory()) {
            holder.mIcon.setImageResource(R.drawable.ic_folder_black_24dp);
            AppCompat.setTint(holder.mIcon, holder.mChecker.getResources().getColor(R.color.colorAccent));
            holder.mIcon.setVisibility(View.VISIBLE);
            holder.mAdded.setVisibility(View.INVISIBLE);
            holder.mCover.setVisibility(View.INVISIBLE);
            holder.mTvTag.setVisibility(View.GONE);
            holder.mChecker.setVisibility(View.GONE);
            holder.mTvInfo.setText(String.format(Locale.getDefault(), "%d项 | %s", item.getChildCount(), item.getDate()));
        } else {
            holder.mTvTag.setVisibility(View.VISIBLE);
            holder.mChecker.setVisibility(View.VISIBLE);
            AppCompat.setTint(holder.mIcon, holder.mChecker.getResources().getColor(R.color.transparent));
            if (isImage) {
                holder.mIcon.setVisibility(View.INVISIBLE);
                holder.mAdded.setVisibility(View.INVISIBLE);
                holder.mCover.setVisibility(View.VISIBLE);
                Glide.with(fragment.get()).load(item.getPath())
                        .apply(new RequestOptions().placeholder(placeholder)
                                .transform(new CenterCrop(), new RoundedCorners(ScreenUtils.dpToPx(3))))
                        .transition(new DrawableTransitionOptions().crossFade())
                        .into(holder.mCover);
            } else if (checkBookAdded && isAdded(item.getFile())) {
                holder.mIcon.setVisibility(View.INVISIBLE);
                holder.mAdded.setVisibility(View.VISIBLE);
                holder.mCover.setVisibility(View.INVISIBLE);
                holder.mIcon.setImageResource(R.drawable.ic_book_added_black_24dp);
                holder.mChecker.setVisibility(View.GONE);
            } else {
                holder.mIcon.setVisibility(View.VISIBLE);
                holder.mAdded.setVisibility(View.INVISIBLE);
                holder.mCover.setVisibility(View.INVISIBLE);
                holder.mIcon.setImageResource(R.drawable.ic_file_black_24dp);
                AppCompat.setTint(holder.mIcon, holder.mChecker.getResources().getColor(R.color.colorTextSecondary));
            }
            holder.mTvTag.setText(item.getSuffix());
            holder.mTvInfo.setText(String.format(Locale.getDefault(), "%s | %s", item.getSize(), item.getDate()));
        }

        holder.mChecker.setChecked(item.isSelected());

        holder.itemView.setOnClickListener(v -> {
            if (fileNotExists(item, holder.getLayoutPosition())) {
                return;
            }

            if (!item.isDirectory() && !holder.mChecker.isShown()) {
                return;
            }

            if (singleChoice) {
                int index;
                if (lastSelectedFile != null && (index = files.indexOf(lastSelectedFile)) >= 0) {
                    if(index != holder.getLayoutPosition()) {
                        lastSelectedFile.setSelected(false);
                        notifyItemChanged(index, index);
                    }
                }

                if (!item.isDirectory()) {
                    item.setSelected(!item.isSelected());
                    holder.mChecker.setChecked(item.isSelected());
                    lastSelectedFile = item;
                }
            } else {
                if (!item.isDirectory()) {
                    item.setSelected(!item.isSelected());
                    holder.mChecker.setChecked(item.isSelected());
                }
            }

            if (itemClickListener != null) {
                itemClickListener.onItemClick(v, item);
            }
        });

        if (isImage) {
            holder.mCover.setOnClickListener(v -> {
                if (fileNotExists(item, holder.getLayoutPosition())) {
                    return;
                }
                if (fragment.get() instanceof FileSelectorContract.View) {
                    ((FileSelectorContract.View) fragment.get()).showBigImage(holder.mCover, item.getPath());
                }
            });
        }
    }
}
 
源代码24 项目: MVPArms   文件: GlideImageLoaderStrategy.java
@Override
public void loadImage(@Nullable Context ctx, @Nullable ImageConfigImpl config) {
    Preconditions.checkNotNull(ctx, "Context is required");
    Preconditions.checkNotNull(config, "ImageConfigImpl is required");
    Preconditions.checkNotNull(config.getImageView(), "ImageView is required");

    GlideRequests requests;

    requests = GlideArms.with(ctx);//如果context是activity则自动使用Activity的生命周期

    GlideRequest<Drawable> glideRequest = requests.load(config.getUrl());

    switch (config.getCacheStrategy()) {
        //缓存策略
        case CacheStrategy.NONE:
            glideRequest.diskCacheStrategy(DiskCacheStrategy.NONE);
            break;
        case CacheStrategy.RESOURCE:
            glideRequest.diskCacheStrategy(DiskCacheStrategy.RESOURCE);
            break;
        case CacheStrategy.DATA:
            glideRequest.diskCacheStrategy(DiskCacheStrategy.DATA);
            break;
        case CacheStrategy.AUTOMATIC:
            glideRequest.diskCacheStrategy(DiskCacheStrategy.AUTOMATIC);
            break;
        default:
            glideRequest.diskCacheStrategy(DiskCacheStrategy.ALL);
            break;
    }

    if (config.isCrossFade()) {
        glideRequest.transition(DrawableTransitionOptions.withCrossFade());
    }

    if (config.isCenterCrop()) {
        glideRequest.centerCrop();
    }

    if (config.isCircle()) {
        glideRequest.circleCrop();
    }

    if (config.isImageRadius()) {
        glideRequest.transform(new RoundedCorners(config.getImageRadius()));
    }

    if (config.isBlurImage()) {
        glideRequest.transform(new BlurTransformation(config.getBlurValue()));
    }

    if (config.getTransformation() != null) {//glide用它来改变图形的形状
        glideRequest.transform(config.getTransformation());
    }

    if (config.getPlaceholder() != 0)//设置占位符
    {
        glideRequest.placeholder(config.getPlaceholder());
    }

    if (config.getErrorPic() != 0)//设置错误的图片
    {
        glideRequest.error(config.getErrorPic());
    }

    if (config.getFallback() != 0)//设置请求 url 为空图片
    {
        glideRequest.fallback(config.getFallback());
    }

    glideRequest
            .into(config.getImageView());
}
 
源代码25 项目: NIM_Android_UIKit   文件: GlideImageLoader.java
private static Transformation<Bitmap> createRounded(int dp) {
    return new RoundedCorners(ScreenUtil.dip2px(dp));
}
 
源代码26 项目: edx-app-android   文件: ImageUtils.java
public static void setRoundedCornerImage(@NonNull ImageView imageView,
                                         @DrawableRes int drawableRes) {
    final Context context = imageView.getContext();
    final int cornerRadius = context.getResources().getDimensionPixelSize(R.dimen.subject_item_corner_radius);
    Glide.with(context).load(drawableRes).transform(new RoundedCorners(cornerRadius)).into(imageView);
}
 
源代码27 项目: TitleBarView   文件: GlideManager.java
/**
 * 加载圆角图片
 *
 * @param obj                 加载的图片资源
 * @param iv
 * @param dp                  圆角尺寸-dp
 * @param placeholderResource -占位图
 * @param isOfficial-是否官方模式圆角
 */
public static void loadRoundImg(Object obj, ImageView iv, float dp, int placeholderResource, boolean isOfficial) {
    Glide.with(iv.getContext()).load(obj).apply(getRequestOptions()
            .error(placeholderResource)
            .placeholder(placeholderResource)
            .fallback(placeholderResource)
            .dontAnimate()
            .transform(isOfficial ? new RoundedCorners(dp2px(dp)) : new GlideRoundTransform(iv.getContext(), dp2px(dp)))).into(iv);
}
 
源代码28 项目: UIWidget   文件: GlideManager.java
/**
 * 加载圆角图片
 *
 * @param obj                 加载的图片资源
 * @param iv
 * @param dp                  圆角尺寸-dp
 * @param placeholderResource -占位图
 * @param isOfficial-是否官方模式圆角
 */
public static void loadRoundImg(Object obj, ImageView iv, float dp, int placeholderResource, boolean isOfficial) {
    Glide.with(iv.getContext()).load(obj).apply(getRequestOptions()
            .error(placeholderResource)
            .placeholder(placeholderResource)
            .fallback(placeholderResource)
            .dontAnimate()
            .transform(isOfficial ? new RoundedCorners(dp2px(dp)) : new GlideRoundTransform(iv.getContext(), dp2px(dp)))).into(iv);
}
 
源代码29 项目: FastLib   文件: GlideManager.java
/**
 * 加载圆角图片
 *
 * @param obj                 加载的图片资源
 * @param iv
 * @param dp                  圆角尺寸-dp
 * @param placeholder         -占位图
 * @param isOfficial-是否官方模式圆角
 */
public static void loadRoundImg(Object obj, ImageView iv, float dp, Drawable placeholder, boolean isOfficial) {
    Glide.with(iv.getContext()).load(obj).apply(getRequestOptions()
            .error(placeholder)
            .placeholder(placeholder)
            .fallback(placeholder)
            .dontAnimate()
            .transform(isOfficial ? new RoundedCorners(dp2px(dp)) : new GlideRoundTransform(dp2px(dp)))).into(iv);
}
 
 类所在包
 同包方法