0
カスタム ImageViewの現在のイメージをプログラムで消去しようとしましたが、setImageResource()メソッドを呼び出した後、私のカスタムイメージビューは古いイメージを保持します。私は以下のソリューションを試してみてください。CustomView - setImageResourceのおかげでキャンバスをクリアする0
- canvas.drawColor(Color.TRANSPARENT、Mode.CLEAR)
- が空のビットマップを描き、何もここで...
が起こっていない私のonDrawメソッドであります表示:
private void loadBitmap() {
BitmapDrawable bitmapDrawable = (BitmapDrawable) getDrawable();
image = (bitmapDrawable != null) ? bitmapDrawable.getBitmap() : null;
}
@Override
public void onDraw(Canvas canvas) {
loadBitmap();
final int circleCenter = getHeight()/2;
final int radius = circleCenter - 5;
if (image != null) {
paint.setShader(computeBitmapShader());
canvas.drawCircle(circleCenter, circleCenter, radius, paint);
} else {
super.onDraw(canvas);
}
}