戴着草帽骑单车 2015-06-15 13:38 采纳率: 0%
浏览 2138

android撕衣服为什么涂的时候不是透明而是黑色

public class MainActivity extends ActionBarActivity {
private ImageView iv;
private Bitmap srcbmp;
private Bitmap alterBmp;
private Canvas canvas;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    iv = (ImageView) findViewById(R.id.iv);
    srcbmp = BitmapFactory.decodeResource(getResources(), R.drawable.pre);
    alterBmp = Bitmap.createBitmap(srcbmp.getWidth(), srcbmp.getHeight(), srcbmp.getConfig());
    canvas = new Canvas(alterBmp);
    Paint paint = new Paint();
    paint.setColor(Color.BLACK);
    Matrix matrix = new Matrix();
    canvas.drawBitmap(srcbmp, matrix, paint);
    iv.setImageBitmap(alterBmp);

    iv.setOnTouchListener(new OnTouchListener() {

        @Override
        public boolean onTouch(View v, MotionEvent event) {
            switch (event.getAction()) {
            case MotionEvent.ACTION_DOWN:

                break;
            case MotionEvent.ACTION_MOVE:
                // event.getRawX(); 离屏幕的距离
                int x = (int) event.getX();
                int y = (int) event.getY();
                System.out.println("设置(" + x + "," + y + ")为透明");
                for (int i = -4; i < 5; i++) {
                    for (int j = -4; j < 5; j++) {
                        try {
                            alterBmp.setPixel(x + i, y + j, 0);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                }
                iv.setImageBitmap(alterBmp);
                break;
            case MotionEvent.ACTION_UP:
                // MediaPlayer.create(getApplicationContext(), R.raw.higirl
                // ).start();
                break;

            }
            return true; // 可以重复循环的处理事件
        }
    });

}

}

图片说明

  • 写回答

6条回答

  • 戴着草帽骑单车 2015-06-15 13:39
    关注

    初学者,请各位高手指点。谢啦

    评论

报告相同问题?