android中的圆形图像边框

时间:2015-03-17 09:19:42

标签: android imageview

我将图像更改为圆形,但我需要在圆形图像周围添加边框。我没有显示边框。

这是我的代码

public static Bitmap getRoundedRectBitmap(Bitmap bitmap, int pixels) {
    Bitmap result = null;
    try {
        result = Bitmap.createBitmap(200, 200, Bitmap.Config.ARGB_8888);
        Canvas canvas = new Canvas(result);

        int color = 0xff424242;
        Paint paint = new Paint();
        Rect rect = new Rect(0, 0, 200, 200);

        paint.setAntiAlias(true);
        canvas.drawARGB(0, 0, 0, 0);
        paint.setColor(Color.GREEN);
        canvas.drawCircle(50, 50, 50, paint);
        paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN));
        canvas.drawBitmap(bitmap, rect, rect, paint);

    } catch (NullPointerException e) {
    } catch (OutOfMemoryError o) {
    }
    return result;
}

2 个答案:

答案 0 :(得分:0)

这是圆形图像视图的优秀第三方库。您还可以将边框添加到圆形图像视图。

https://github.com/hdodenhof/CircleImageView

答案 1 :(得分:0)

您可以使用paint的setStrokeWidth()方法。你可以参考这个here

此外,如果您想为imageView提供边框,请使用下面的代码。

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
<item>
    <shape android:shape="rectangle" >
        <solid android:color="@android:color/darker_gray" />

        <padding
            android:bottom="@dimen/two"
            android:left="@dimen/two"
            android:right="@dimen/two"
            android:top="@dimen/two" />

        <corners android:radius="@dimen/two_zero" />
    </shape>
</item>
</layer-list>

现在将此xml作为Imageview的背景。