裁剪SurfaceView
并不是真正的裁剪SurfaceView而是用FrameLayout包裹 SurfaceView达到视觉裁剪。举例给外层 FrameLayout 设置圆角轮廓 开启轮廓裁剪让 FrameLayout 把超出圆角的部分 “挡住”从而让矩形 SurfaceView 看起来是圆角的。activity_main.xmlFrameLayout android:idid/frame_layout android:layout_width2560px android:layout_height1168px SurfaceView android:idid/surfaceview android:layout_widthmatch_parent android:layout_heightmatch_parent android:layout_centerInParenttrue/ /FrameLayoutMainActivity.javamFrameLayout findViewById(R.id.frame_layout); mFrameLayout.setOutlineProvider(new ViewOutlineProvider() { Override public void getOutline(View view, Outline outline) { // 定义圆角矩形轮廓 outline.setRoundRect(0, 10, view.getWidth(), view.getHeight()-10, 70); } }); mFrameLayout.setClipToOutline(true); // 开启轮廓裁剪 mFrameLayout.setClipChildren(true); // 裁剪所有子Viewoutline.setRoundRect( left, // 左边界 top, // 上边界 right, // 右边界 bottom, // 下边界 radius // 圆角半径 );