【发布时间】:2011-06-07 22:18:02
【问题描述】:
我正在开发一个在 SurfaceView 上显示相机预览的应用,但我只想显示预览的上半部分。
有没有办法裁剪/剪裁视图,或者我必须求助于用图像、其他视图或绘图之类的东西来遮挡下半部分?
问候 西蒙
【问题讨论】:
我正在开发一个在 SurfaceView 上显示相机预览的应用,但我只想显示预览的上半部分。
有没有办法裁剪/剪裁视图,或者我必须求助于用图像、其他视图或绘图之类的东西来遮挡下半部分?
问候 西蒙
【问题讨论】:
我目前正在使用这种方法进行裁剪(基本上是使用绝对布局的裁剪子功能来裁剪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>
【讨论】:
用另一个视图覆盖SurfaceView 是最简单的方法......但是,如果你问我,它会很丑。
为什么不手动设置SurfaceView 高度?让它占据 50% 的屏幕空间,它会做你想做的事。您不提供代码,所以我们必须做一些猜测:假设您有一个LinearLayout,然后在其中放置两个视图:您的表面视图和另一种视图。然后,您将它们的高度设置为 0dip,将它们的重量设置为 1...应该这样做。
【讨论】:
SurfaceView 中吗?