2

Mode.Clear のデフォルトの色を変更したい。私のアプリでは、クリアオプションが最初に黒い線を残し、次に画像をクリアする消去方法を使用しています。背景に応じて、代わりに別の色を使用したい。これが私のコードです...

消去方法:

public void erase(View v)

{
    //mPaint=new Paint();
   //mPaint.setAlpha(0);


//mPaint.setColor(Color.WHITE);
   //mPaint.setARGB(0, 255, 255, 255);
    mPaint.setXfermode(new PorterDuffXfermode(Mode.CLEAR));
    //mPaint.setAntiAlias(true);
       //mBitmap.eraseColor(Color.TRANSPARENT);
      // mPaint.setStrokeWidth(45);
    // mPaint.setXfermode(new PorterDuffXfermode(PorterD

//uff.Mode.CLEAR));
}
4

2 に答える 2

1

それに対する直接的な解決策はありません。回避策があります:

  1. 「移動」イベント中に、ペイントの Xfermode を null に設定してパスを通常どおりに表示します。
  2. 「タッチアップ」イベント中、キャンバスに描画する前に、ペイントの Xfermode をクリアに設定します。
  3. 描画後にペイントの Xfermode を null に設定します。
于 2013-04-14T14:37:37.717 に答える
0

ねえ、私は黒い線を削除するために一種のトリックを使用しました.私の消去ボタンでは、XferModeを使用する代わりに、色を白に設定しました..

if(erase){
paintColor = Color.parseColor(newColor);
drawPaint.setColor(paintColor);
}
于 2013-09-23T20:06:42.980 に答える