public CreditsAdapter(@NonNull Context context, @NonNull List<Credit> credits) { mContext = context; mCredits = credits; int color = ColorHelper.getAttributeColor(mContext, android.R.attr.textColorSecondary); Drawable drawable = DrawableHelper.getTintedDrawable( mContext, R.drawable.ic_toolbar_default_profile, color); mOptions = ImageConfig.getRawDefaultImageOptions(); mOptions.resetViewBeforeLoading(true); mOptions.cacheInMemory(true); mOptions.cacheOnDisk(true); mOptions.showImageForEmptyUri(drawable); mOptions.showImageOnFail(drawable); mOptions.showImageOnLoading(drawable); mOptions.displayer(new CircleBitmapDisplayer()); }
/** * 获取一个圆形的配置 * * @return */ public static DisplayImageOptions getCircleOption(Integer strokeColor, float strokeWidth) { DisplayImageOptions options = new DisplayImageOptions.Builder() . // 网络图片下载完成之前的预加载的默认图片 showImageOnLoading(R.mipmap.ic_launcher) . // 网络图片下载失败后显示该默认图片 showImageOnFail(R.mipmap.ic_launcher) . // 图片的质量 bitmapConfig(Bitmap.Config.RGB_565).cacheInMemory(true) .cacheOnDisk(true) .displayer(new CircleBitmapDisplayer(strokeColor, strokeWidth)) .build(); return options; }
/** * 获取配置器 * @param isCircle * @param defaultRes * @return */ public DisplayImageOptions getDefaultOptions(boolean isCircle, int defaultRes){ DisplayImageOptions.Builder builder = new DisplayImageOptions.Builder() .cacheInMemory(true)//设置下载的图片是否缓存在内存中 .cacheOnDisc(true)//设置下载的图片是否缓存在SD卡中 .considerExifParams(true) //是否考虑JPEG图像EXIF参数(旋转,翻转) .imageScaleType(ImageScaleType.EXACTLY_STRETCHED)//设置图片以如何的编码方式显示 .bitmapConfig(Bitmap.Config.RGB_565)//设置图片的解码类型:设置为RGB565比起默认的ARGB_8888要节省大量的内存 // .delayBeforeLoading(100)//载入图片前稍做延时可以提高整体滑动的流畅度 .resetViewBeforeLoading(true);//设置图片在下载前是否重置,复位 if(isCircle){ // builder.displayer(new RoundedBitmapDisplayer(12));//是否设置为圆角,弧度为多少 builder.displayer(new CircleBitmapDisplayer(10)); } if(defaultRes!=0){ builder.showImageForEmptyUri(defaultRes)//设置图片Uri为空或是错误的时候显示的图片 // .showImageOnLoading(defaultRes) //设置图片在下载期间显示的图片-->应该去掉-会造成ListView中图片闪烁 .showImageOnFail(defaultRes); //设置图片加载/解码过程中错误时候显示的图片 } return builder.build();//构建完成 }
ImageAdapter(Context context) { inflater = LayoutInflater.from(context); options = new DisplayImageOptions.Builder() .showImageOnLoading(R.drawable.ic_stub) .showImageForEmptyUri(R.drawable.ic_empty) .showImageOnFail(R.drawable.ic_error) .cacheInMemory(true) .cacheOnDisk(true) .considerExifParams(true) .displayer(new CircleBitmapDisplayer(Color.WHITE, 5)) .build(); }
public WaterfallAdapter(List<String> list) { mValues = list; options = new DisplayImageOptions.Builder() .showImageOnLoading(R.drawable.ic_stub) .showImageForEmptyUri(R.drawable.ic_empty) .showImageOnFail(R.drawable.ic_error) .cacheInMemory(true) .cacheOnDisk(true) .considerExifParams(true) .displayer(new CircleBitmapDisplayer(Color.WHITE, 5)) .build(); }