我試圖替換顏色的東西是在Canvas使用AvoidXferMode繪製的顏色。 從Android文檔,它看起來像它正是我需要的:AvoidXferMode更換畫布
AvoidXfermode xfermode將無處不在畫SRC除了在opColor的頂部或取決於模式,只繪製在opColor的頂部。
我想要是這樣的:
Paint paint = new Paint();
paint.setColor(Color.RED);
canvas.drawPaint(paint); // actually drawing a bitmap here
paint.setXferMode(new AvoidXferMode(Color.RED, 0, TARGET);
paint.setColor(Color.GREEN);
canvas.drawPaint(paint);
然而,這只是給出了一個紅色的屏幕,而不是綠如我所期望的(綠色替換紅色)。我想我錯過了一些地方......任何建議?
鏈接到Eric Burke的頁面現已停止。 – Trevor 2012-08-15 22:06:08
@Trevor更新了這篇文章,你可以改正它,而不是降低它。解決方案的要點不在於鏈接,而在於答案本身。 – botteaap 2012-08-17 06:55:03
非常感謝澄清 - 現在upvoted。對不起,我自己沒有改正,因爲我真的沒有從你的答案中得到完整的圖片,卻沒有看到埃裏克的頁面。 – Trevor 2012-08-17 10:18:05