Androidペイントアプリ用のカスタムブラシを作成しようとしています。Michaelのコード(ここにあります)から始めて、.pngブラシを取得し、それをビットマップとして使用して再描画することができました。正常に動作しますが、色を変更できません。を使用してみましたsetcolorfilter
がcolormatrixfilter
、機能していないようです。誰もが私がこれを行うことができる方法を知っていますか?
private Bitmap mBitmapBrush;
private Vector2 mBitmapBrushDimensions;
private List<Vector2> mPositions = new ArrayList<Vector2>(100);
private Paint mPanit;
public MyView(Context c) {
super(c);
mPath = new Path();
mBitmapPaint = new Paint(Paint.DITHER_FLAG);
mBitmapBrush = BitmapFactory.decodeResource(c.getResources(),R.drawable.brush1);
mBitmapBrushDimensions = new Vector2(mBitmapBrush.getWidth(), mBitmapBrush.getHeight());
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawColor(0xFFAAAAAA);
canvas.drawBitmap(mBitmap, 0, 0, mBitmapPaint);
for (Vector2 pos : mPositions) {
canvas.drawBitmap(mBitmapBrush, pos.a, pos.b, mPanit);
}
invalidate();
}
Colormatrixfilterを使用しようとすると、.set関数でエラーが発生していました。