Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class TransparentCircle extends View {
- Bitmap bm;
- Canvas cv;
- Paint eraser;
- public TransparentCircle(Context context) {
- super(context);
- Init();
- }
- public TransparentCircle(Context context, AttributeSet attrs) {
- super(context, attrs);
- Init();
- }
- public TransparentCircle(Context context, AttributeSet attrs,
- int defStyleAttr) {
- super(context, attrs, defStyleAttr);
- Init();
- }
- private void Init() {
- eraser = new Paint();
- eraser.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.CLEAR));
- eraser.setAntiAlias(true);
- }
- @Override
- protected void onSizeChanged(int w, int h, int oldw, int oldh) {
- if (w != oldw || h != oldh) {
- bm = Bitmap.createBitmap(w, h, Bitmap.Config.ARGB_8888);
- cv = new Canvas(bm);
- }
- super.onSizeChanged(w, h, oldw, oldh);
- }
- @Override
- protected void onDraw(Canvas canvas) {
- int w = getWidth();
- int h = getHeight();
- int radius = 100;
- bm.eraseColor(Color.TRANSPARENT);
- cv.drawColor(getResources().getColor(R.color.colorBgMapDialog));
- cv.drawCircle(w / 2, h / 2, radius, eraser);
- canvas.drawBitmap(bm, 0, 0, null);
- super.onDraw(canvas);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement