baseBitmap 你是从 drawable 中读取的,是不能发生改变的所以错误,建议直接使用 Bitmap.create()进行创建一个固定宽高的 bitmap

解决方案 »

  1.   

    那如果你是需要直接显示图片,请使用 imageView.setImageDrawable 之类的,如果你是希望对图片进行处理,你可以这样弄,,baseBitmap 读取不变然后Bitmap tmp = Bitmap.create(baseBitmap.getWidth(),baseBitmap.getHeight(),Config.ARGB_8888);
    cavas=new Canvas(tmp);
    然后再将你需要的 bitmap 绘制到 canvas 上,然后进行处理
      

  2.   

    Options opts = new Options();
    opts.inMutable = true;
    baseBitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher, opts);
    Canvas canv = new Canvas(baseBitmap);