毕加索
使用毕加索,请按照以下步骤:
步骤1
在 Gradle 中添加这些依赖项:
repositories {
jcenter()
}
dependencies {
compile 'jp.wasabeef:picasso-transformations:2.2.1'
compile 'jp.co.cyberagent.android.gpuimage:gpuimage-library:1.4.1'
}
步骤 2
设置 Picasso 转换:
Picasso.get()
.load(currentEvent.posterDownloadPath)
.transform(new BlurTransformation(mContext, 25, 1))
.into(recommendedEventViewHolder.blurryImageView);
在 Kotlin 中像这样:
Picasso.get()
.load(currentEvent.posterDownloadPath)
.transform(BlurTransformation(mContext, 25, 1))
.into(recommendedEventViewHolder.blurryImageView)
此外,您还可以使用Blurry。Blurry是一个易于使用的Android模糊库。但我建议使用Fresco。Fresco是Android应用程序中显示图像的强大系统。
Fresco
要使用Fresco,请按照以下步骤进行:
步骤1:创建Android项目,并将fresco库依赖添加到模块的build.gradle文件中并同步项目。
dependencies {
implementation 'com.facebook.fresco:fresco:1.13.0'
implementation 'jp.wasabeef:fresco-processors:2.1.0'
}
步骤2:在MainActivity.java或Application.java的onCreate()方法中初始化Fresco
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Fresco.initialize(this);
setContentView(R.layout.activity_main);
}
第三步: 在你的activity_main.xml文件中添加SimpleDraweeView, 它是由Fresco库提供的。
<com.facebook.drawee.view.SimpleDraweeView
android:id="@+id/sdv_image"
android:layout_width="match_parent"
android:layout_height="200dp"
android:src="@mipmap/ic_launcher" />
步骤4:在编写图像模糊代码之前,您需要处理三个重要的类。
i. 后处理器: -定义图像模糊质量。
ii. ImageRequest: -使用Postprocessor实例创建控制器请求。
iii. PipelineDraweeController: -使用ImageRequest和SimpleDraweeView实例为视图准备控制器。
步骤5:在主活动类中创建一个BlurPostprocessor实例,并传入上下文和半径参数,其中半径指定图像的模糊百分比。
Postprocessor postprocessor = new BlurPostprocessor(this,50)
Step6:使用Postprocessor实例中保存的模糊属性构建图像请求的ImageRequest类。
ImageRequest imageRequest = ImageRequestBuilder.newBuilderWithSource(Uri.parse("image url"))
.setPostprocessor(postprocessor)
.build();
步骤7:使用ImageRequest和旧的SimpleDraweeView创建PipelineDraweeController的新实例。
controller = (PipelineDraweeController) Fresco.newDraweeControllerBuilder()
.setImageRequest(imageRequest)
.setOldController(simpleDraweeView.getController())
.build();
步骤8: 将控制器传递给simpleDraweeView。
simpleDraweeView.setController(controller)
就这些了,现在构建并运行应用程序。
享受吧 :)