我正在使用框架布局,我已将imageview添加到其中。框架布局是圆圈形状。当框架布局的尺寸大于布局尺寸时,框架布局内的图像视图会移动到该圆圈之外。我想隐藏那个额外的imageview。任何帮助将不胜感激。
谢谢:)
答案 0 :(得分:1)
试试这个功能......
您需要提供方形位图文件和所需圆形图像的输出大小。
public static Bitmap getCroppedBitmap(Bitmap bitmap, int size) {
bitmap = Bitmap.createScaledBitmap(bitmap, size, size, false);
Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),
bitmap.getHeight(), Config.ARGB_8888);
Canvas canvas = new Canvas(output);
int color = 0xff424242;
Paint paint = new Paint();
Rect rect = new Rect(0, 0, bitmap.getWidth(), bitmap.getHeight());
paint.setAntiAlias(true);
canvas.drawARGB(0, 0, 0, 0);
paint.setColor(color);
canvas.drawCircle(bitmap.getWidth() / 2, bitmap.getHeight() / 2,
bitmap.getWidth() / 2, paint);
paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
canvas.drawBitmap(bitmap, rect, rect, paint);
return output;
}
答案 1 :(得分:0)
基本上你应该为此目的使用画布。
绘制一个圆形画布,并在其中添加图像位图。
您的参考https://github.com/lopspower/CircularImageView
您可以在项目中使用此库
只需在xml中添加
<com.mikhaellopez.circularimageview.CircularImageView
android:layout_width="250dp"
android:layout_height="250dp"
android:src="@drawable/image"
app:border_color="#EEEEEE"
app:border_width="4dp"
app:shadow="true" />