fresco的加载图片的框架+高斯模糊

依赖
implementation ‘com.facebook.fresco:fresco:0.14.1’

Activity

public class MainActivity extends AppCompatActivity {

private SimpleDraweeView simple;
private SimpleDraweeView simple1;
private String Url="http://img5.imgtn.bdimg.com/it/u=4212639482,1816603765&fm=26&gp=0.jpg";

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    simple=findViewById(R.id.simple);
    simple1=findViewById(R.id.simple1);


    showUrlBlur(simple,Url,5,5);

    loadToBitmap(Url,simple1);

}


//高斯模糊
public static void showUrlBlur(SimpleDraweeView draweeView, String url, int iterations, int blurRadius) {
    try {
        Uri uri = Uri.parse(url);
        ImageRequest request = ImageRequestBuilder.newBuilderWithSource(uri)
                .setPostprocessor(new IterativeBoxBlurPostProcessor(iterations, blurRadius))
                .build();
        AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
                .setOldController(draweeView.getController())
                .setImageRequest(request)
                .build();
        draweeView.setController(controller);
    } catch (Exception e) {
        e.printStackTrace();
    }
}


//图片的加载
public static void loadToBitmap(String imageUrl, SimpleDraweeView draweeView) {
    ImageRequest imageRequest = ImageRequestBuilder
            .newBuilderWithSource(Uri.parse(imageUrl))
            .setProgressiveRenderingEnabled(true)
            .build();

    AbstractDraweeController controller = Fresco.newDraweeControllerBuilder()
            .setOldController(draweeView.getController())
            .setImageRequest(imageRequest)
            .build();
    draweeView.setController(controller);
}

Xml的布局

<com.facebook.drawee.view.SimpleDraweeView
        android:id="@+id/simple"
        android:layout_width="200dp"
        android:layout_height="200dp"
        fresco:roundingBorderColor="#fff"
        fresco:roundingBorderWidth="2dp"
        />

<com.facebook.drawee.view.SimpleDraweeView
    android:id="@+id/simple1"
    android:layout_width="100dp"
    android:layout_height="100dp"
    fresco:roundAsCircle="true"
    android:layout_centerVertical="true"
    android:layout_centerHorizontal="true"
    fresco:roundingBorderColor="#fff"
    fresco:roundingBorderWidth="2dp"
    />

猜你喜欢

转载自blog.csdn.net/yjjhtl/article/details/85254306