Instead of CircularImageView, you need a regular image view, where you load a png with circular transparent hole of desired size.
So, the proposed hierarchy could be something like this:
<FrameLayout size="match_parent">
<TextureView size=<calculated_to_match_camera> centered />
<ImageView size="match_parent" src="full-screen-gradient-with-transparent-circle-in-center.png" />
<FrameLayout />
The shorthand above assumes size --> android:width and android:height. The texture size is set programmatically to fit the camera preview aspect ratio, and have the region of interest exposed through the circular hole in the ImageView layer above it.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…