androidstudio图片圆角
时间: 2023-12-19 19:05:43 浏览: 172
基于Android Studio的注册于登录(无数据库版)
以下是在Android Studio中设置图片圆角的两种方法:
1. 在xml中使用RoundedImageView库
在build.gradle文件中添加以下依赖:
```
dependencies {
implementation 'com.makeramen:roundedimageview:2.3.0'
}
```
然后在xml文件中使用RoundedImageView控件,并设置app:riv_corner_radius属性来设置圆角弧度,如下所示:
```xml
<com.makeramen.roundedimageview.RoundedImageView
android:id="@+id/imageView1"
android:src="@drawable/photo1"
android:scaleType="fitCenter"
app:riv_corner_radius="30dip"
app:riv_border_width="2dip"
app:riv_border_color="#333333"
app:riv_mutate_background="true"
app:riv_tile_mode="repeat"
app:riv_oval="true" />
```
2. 在Java代码中使用Bitmap和Canvas
```java
public Bitmap getRoundedCornerBitmap(Bitmap bitmap, float roundPx) {
Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),
bitmap.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(output);
final int color = 0xff424242;
final Paint paint = new Paint();
final Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
final RectF rectF = new RectF(rect);
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawRoundRect(rectF, roundPx, roundPx, paint);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
return output;
}
```
以上是两种设置图片圆角的方法,第一种方法使用了RoundedImageView库,第二种方法则是在Java代码中使用Bitmap和Canvas。需要注意的是,第二种方法需要在UI线程之外执行,否则可能会导致ANR。
阅读全文