我正在开发一款在SurfaceView上显示相机预览的应用,但我只想显示预览的上半部分。
是否有裁剪/裁剪视图的方法,或者我是否必须使用像图像,其他视图或绘图之类的东西来模糊下半部分?
问候 西蒙
答案 0 :(得分:0)
我目前正在使用此方法进行裁剪(基本上使用绝对布局的剪辑子能力来剪裁surfaceview子)
<AbsoluteLayout android:clipChildren="true" android:layout_alignParentRight="true" android:layout_width="240dp" android:id="@+id/absoluteLayout1" android:layout_height="80dp">
<SurfaceView android:id="@+id/swSurfaceView" android:layout_width="240dp" android:layout_height="160dp" android:visibility="visible"></SurfaceView>
</AbsoluteLayout>
答案 1 :(得分:-1)
用另一种观点覆盖SurfaceView
是最简单的方法......但是,如果你问我,那就太难看了。
为什么不手动设置SurfaceView
高度?让它占据50%的屏幕空间,它会做你想要的。你没有提供代码所以我们必须做一些猜测:让我们假设你有一个LinearLayout
,然后在里面放两个视图:你的表面视图和另一种视图。然后,你将它们的高度设置为0dip,并将它们的权重设置为1 ......应该这样做。