我制作了一个应用程序,我想用事件擦除绘图线.为此我用过
mPaint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
Run Code Online (Sandbox Code Playgroud)
但是在删除一条线时,该线先变为黑色,然后擦除.我想要一个透明的颜色来擦除绘图路径.
我已经经历FingerPaint.java过APIDemos ie android-sdk\samples\android-17\ApiDemos
并修改了
@Override
protected void onDraw(Canvas canvas) {
canvas.drawColor(0xFFAAAAAA);
canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
canvas.drawPath(mPath, mPaint);
}
Run Code Online (Sandbox Code Playgroud)
到
@Override
protected void onDraw(Canvas canvas) {
canvas.drawColor(0xFFAAAAAA);
canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
mCanvas.drawPath(mPath, mPaint); // this line changed
// mCanvas is Canvas variable which is
// initialized in onSizeChanged()
}
Run Code Online (Sandbox Code Playgroud)
现在擦除时不再绘制黑色,一切正常。不确定这是 100% 正确的答案,但它对我有用。
| 归档时间: |
|
| 查看次数: |
1874 次 |
| 最近记录: |