android – 通知大图标圆

我想从用户的联系人中显示一个循环头像作为通知的大图标,就像收到文本或邮件一样.当我将大图标设置为该联系人的图像时,会导致一个方形图标.

我正在寻找看起来像顶级图标(方形头像)的东西,看起来像电子邮件通知(圆形头像)上的大图标:

我如何做到这一点?

解决方法

由于setLargeIcon()接受一个Bitmap,所以你需要做的就是从源头创建一个循环的Bitmap.

以下是从Create a circle bitmap in Android开始的代码(没有尝试过自己).

private Bitmap getCircleBitmap(Bitmap bitmap) {
    final Bitmap output = Bitmap.createBitmap(bitmap.getWidth(),bitmap.getHeight(),Bitmap.Config.ARGB_8888);
    final Canvas canvas = new Canvas(output);

    final int color = Color.RED;
    final Paint paint = new Paint();
    final Rect rect = new Rect(0,bitmap.getWidth(),bitmap.getHeight());
    final RectF rectF = new RectF(rect);

    paint.setAntiAlias(true);
    canvas.drawARGB(0,0);
    paint.setColor(color);
    canvas.drawoval(rectF,paint);

    paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.SRC_IN));
    canvas.drawBitmap(bitmap,rect,paint);

    bitmap.recycle();

    return output;
}

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...