My answer is rather late, but may help someone achieve this. Here is an example of how to make a translucent look with a transparent circle corresponding to the size of the smallest size, located in the center with a small margin. It can be placed as an overlay for any kind.
package your_package.ui.widget; import android.annotation.TargetApi; import android.content.Context; import android.graphics.Bitmap; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.PorterDuff; import android.graphics.PorterDuffXfermode; import android.graphics.RectF; import android.os.Build; import android.util.AttributeSet; import android.widget.LinearLayout; import android.widget.RelativeLayout; import your_package.R; public class RadiusOverlayView extends LinearLayout { private Bitmap windowFrame; public RadiusOverlayView(Context context) { super(context); } public RadiusOverlayView(Context context, AttributeSet attrs) { super(context, attrs); } public RadiusOverlayView(Context context, AttributeSet attrs, int defStyleAttr) { super(context, attrs, defStyleAttr); } @TargetApi(Build.VERSION_CODES.LOLLIPOP) public RadiusOverlayView(Context context, AttributeSet attrs, int defStyleAttr, int defStyleRes) { super(context, attrs, defStyleAttr, defStyleRes); } @Override protected void dispatchDraw(Canvas canvas) { super.dispatchDraw(canvas); if (windowFrame == null) { createWindowFrame();
And this is how it looks in my case:

source share