我正在开发一个Android应用来播放视频。为此,我使用SurfaceView。有没有办法让SurfaceView圆角?
我尝试使用以下代码制作圆角。它可以使Button,Layout,TextView圆角,但它不能在SurfaceView
上工作<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<!-- view background color -->
<!-- view border color and width -->
<stroke
android:width="5dp"
android:color="#FF0000" >
</stroke>
<!-- If you want to add some padding -->
<padding
android:bottom="4dp"
android:left="4dp"
android:right="4dp"
android:top="4dp" >
</padding>
<!-- Here is the corner radius -->
<corners
android:radius="20dp">
</corners>
此代码在SurfceView上显示红色圆角边框,但视图本身没有圆角。
如何使SurfaceView成圆角?
请在这个问题上帮助我。
提前感谢
答案 0 :(得分:0)
为了做到这一点,你必须处理视频的每一帧以掩盖它们。
检查lockCanvas的使用。基本上你必须创建一个辅助线程,它始终锁定画布,拍摄视频帧,屏蔽它,绘制它并释放画布。
查看这篇文章的示例:
http://androidtutorialsandtips.blogspot.com/2012/01/overriding-ondraw-method-in-surfaceview.html