Android图片缓存框架 - Fresco实现圆角或圆形图片 (四)

目录

1.Fresco 简介

2. Fresco 文档

3. Fresco开发步骤

4. Fresco加载图片6种方式

5. Drawees xm属性设置

6 Fresco实现圆角或圆形图片

6.1 实现图片圆角

6.2 实现圆形图片

6.3 创建RoundingParams对象3种形式

7. DraweeHierarchy设置

8. Fresco的DraweeController

9. ControllerListener 图片加载监听

10. Fresco的ImageRequest

11 Fresco的显示GIF

12 Fresco的BasePostprocessor图片处理

13.Fresco设置和清除缓存

 


6 Fresco实现圆角或圆形图片

6.1 实现图片圆角

xml设置:roundAsCircle属性false

// 图片圆角设置
fresco:roundAsCircle="false"
fresco:roundedCornerRadius="1dp" // 圆角半径
fresco:roundTopLeft="true"       // 左上角是否为圆角
fresco:roundTopRight="false"     // 右上角是否为圆角
fresco:roundBottomLeft="false"   // 左下角是否为圆角
fresco:roundBottomRight="true"   // 右下角是否为圆角
fresco:roundWithOverlayColor="@color/corner_color"
fresco:roundingBorderWidth="2dp" //边框的宽度
fresco:roundingBorderColor="@color/border_color" //边框颜色

代码实现:

draweeView.setImageURI("asset://android_asset/img3.jpg");

RoundingParams params = new RoundingParams();
params.setRoundAsCircle(false);
params.setBorder(Color.BLUE,5);
params.setOverlayColor(Color.RED);
params.setCornersRadius(50);
params.setScaleDownInsideBorders(true);

draweeView.getHierarchy().setRoundingParams(params);

6.2 实现圆形图片

xml设置:roundAsCircle属性true

// 圆形图片
fresco:roundAsCircle="true"
fresco:roundedCornerRadius="1dp" // 圆角半径
fresco:roundTopLeft="true"       // 左上角是否为圆角
fresco:roundTopRight="false"     // 右上角是否为圆角
fresco:roundBottomLeft="false"   // 左下角是否为圆角
fresco:roundBottomRight="true"   // 右下角是否为圆角
fresco:roundWithOverlayColor="@color/corner_color"
fresco:roundingBorderWidth="2dp" //边框的宽度
fresco:roundingBorderColor="@color/border_color" //边框颜色

代码实现:

方式一:简单设置

hierarchy.setRoundingParams(RoundingParams.asCircle());

方式二:设置圆形边框、颜色

draweeView.setImageURI("asset://android_asset/img3.jpg");

RoundingParams params = new RoundingParams();
params.setRoundAsCircle(true);
params.setBorder(Color.BLUE,2);
params.setOverlayColor(Color.WHITE);
params.setCornersRadius(30);

draweeView.getHierarchy().setRoundingParams(params);

6.3 创建RoundingParams对象3种形式

方式一:

RoundingParams params = new RoundingParams();

方式二:

RoundingParams params = RoundingParams.fromCornersRadius(50);

 

你可能感兴趣的:(Android图片缓存框架,Fresco,Android开发)