如何给图片设置圆角效果,模仿iPhone图标

处理图片的圆角效果: 

public Bitmap toRoundCorner(Bitmap bitmap, int pixels) { 

          
         Bitmap output = Bitmap.createBitmap(bitmap.getWidth(), bitmap.getHeight(), 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); 
         final float roundPx = pixels; 
  
         paint.setAntiAlias(true); 
         canvas.drawARGB(0, 0, 0, 0); 
         paint.setColor(color); 
         canvas.drawRoundRect(rectF, roundPx, roundPx, paint); 
  
         paint.setXfermode(new PorterDuffXfermode(Mode.SRC_IN)); 
         canvas.drawBitmap(bitmap, rect, rect, paint); 
  
         return output; 

     }


如何调用该方法:

  Drawable drawable = getResources().getDrawable(R.drawable.app_icon);
         BitmapDrawable bitmapDrawable = (BitmapDrawable) drawable;
         Bitmap bitmap = bitmapDrawable.getBitmap();
        
         BitmapDrawable bbb = new BitmapDrawable(toRoundCorner(bitmap, 30));
         layout.setBackgroundDrawable(bbb);

你可能感兴趣的:(如何给图片设置圆角效果,模仿iPhone图标)