How to blur imageview in android

后端 未结 10 1987
南笙
南笙 2020-12-05 10:54

I have an imageview and i set Image Resources programmatically like this:

int resourceId = getResources().getIdentifier(\"imagename\", \"drawable\", \"mypack         


        
10条回答
  •  既然无缘
    2020-12-05 11:31

    This is simple method

    set blur color with alpha

    public class BlurImageView extends ImageView {
        Paint rectPaint;
    
      private  int blurcolor=Color.parseColor("#aeffffff");
        public BlurImageView(Context context) {
            this(context, null);
    
        }
    
        public BlurImageView(Context context, AttributeSet attrs) {
            this(context, attrs, 0);
    
        }
    
        public BlurImageView(Context context, AttributeSet attrs, int defStyleAttr) {
            super(context, attrs, defStyleAttr);
    
            rectPaint=new Paint();
            rectPaint.setAntiAlias(true);
            rectPaint.setStyle(Paint.Style.FILL);
            rectPaint.setColor(blurcolor);
            invalidate();
        }
    
        public void setBlurcolor(int blurcolor) {
            this.blurcolor = blurcolor;
            invalidate();
        }
    
        @Override
        protected void onDraw(Canvas canvas) {
            super.onDraw(canvas);
    
            Log.i("BlurImageView","canvas");
    
            canvas.drawRect(getLeft(),0,getRight(),getHeight(),rectPaint);
        }
    }
    

提交回复
热议问题