Android 圆角图片

效果图:
Android 圆角图片的实现_第1张图片

快速开始

  1. activity_main.xml文件。
<?xml version="1.0" encoding="utf-8"?><android.support.constraint.ConstraintLayout    xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:app="http://schemas.android.com/apk/res-auto"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context=".MainActivity">    <ImageView        android:id="@+id/iv_img"        android:layout_width="300dp"        android:layout_height="200dp"        android:layout_marginTop="30dp"        android:src="@mipmap/image_bg"        app:layout_constraintRight_toRightOf="parent"        app:layout_constraintLeft_toLeftOf="parent"        app:layout_constraintTop_toTopOf="parent"/>    <ImageView        android:id="@+id/iv_rect_img"        android:layout_width="300dp"        android:layout_height="200dp"        android:layout_marginTop="30dp"        app:layout_constraintRight_toRightOf="parent"        app:layout_constraintLeft_toLeftOf="parent"        app:layout_constraintTop_toBottomOf="@id/iv_img"/>    <ImageView        android:id="@+id/iv_circle_img"        android:layout_width="200dp"        android:layout_height="200dp"        android:layout_marginTop="30dp"        app:layout_constraintLeft_toLeftOf="parent"        app:layout_constraintRight_toRightOf="parent"        app:layout_constraintTop_toBottomOf="@id/iv_rect_img"/></android.support.constraint.ConstraintLayout>
  1. MainActivity.class文件。
public class MainActivity extends AppCompatActivity {    private ImageView ivRectImg, ivCircleImg;    private Bitmap bitmap;    private int width;    private int height;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        ivRectImg = findViewById(R.id.iv_rect_img);        ivCircleImg = findViewById(R.id.iv_circle_img);        bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.image_bg);        width = bitmap.getWidth();        height = bitmap.getHeight();        rectRoundBitmap();        circleBitmap();    }// 圆角矩形    private void rectRoundBitmap() {        RoundedBitmapDrawable bitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), bitmap);        bitmapDrawable.setAntiAlias(true);        bitmapDrawable.setCornerRadius(50);        ivRectImg.setImageDrawable(bitmapDrawable);    }    // 把bitmap图片进行剪切成正方形, 然后再设置圆角半径为正方形边长的一半即可    private void circleBitmap() {        Bitmap circle = null;        int min = Math.min(width, height);        int max = Math.max(width, height);        if (width == height) {            circle = Bitmap.createBitmap(bitmap, 0, 0, width, height);        } else {            // 居中裁剪            if (width > height) {                circle = Bitmap.createBitmap(bitmap, (max - min) / 2, 0, min, min);            } else {                circle = Bitmap.createBitmap(bitmap, 0, (max - min) / 2, min, min);            }        }        RoundedBitmapDrawable bitmapDrawable = RoundedBitmapDrawableFactory.create(getResources(), circle);        bitmapDrawable.setCornerRadius(min / 2);        bitmapDrawable.setAntiAlias(true);        ivCircleImg.setImageDrawable(bitmapDrawable);    }}

更多相关文章

  1. Android文件存储
  2. Android 播放资源文件视频
  3. android 日志文件输出
  4. Android图片圆角 用简单的方法实现
  5. android 两点缩放图片
  6. Android实现图片放大缩小
  7. 图片走廊
  8. gradle 配置文件 build.gradle 属性详解
  9. android文件缓存,并SD卡创建目录未能解决和bitmap内存溢出解决

随机推荐

  1. Android的Message机制
  2. Android(安卓)Toolchain与Bionic Libc
  3. Android(安卓)8.1隐藏状态栏图标
  4. Windows环境下Android(安卓)Studio v1.0
  5. Android(安卓)的OpenGL ES与EGL
  6. Android实现为GridView添加边框效果
  7. Android(安卓)NDK c调用java代码
  8. Android(安卓)- View Alpha值
  9. Android的Activity获取fragment和fragmen
  10. Android(安卓)全屏与沉浸式