10
我想在Camera SurfaceView \ preview顶部看到图像。 我该怎么做?任何例子?以上透明图片的相机预览
我想在Camera SurfaceView \ preview顶部看到图像。 我该怎么做?任何例子?以上透明图片的相机预览
一个很好的例子可以在ZXing库,Barcode Scanner应用程序中找到。
他们做什么是他们使用FrameLayout
为SurfaceView
和他们的自定义ViewfinderView
这样既SurfaceView
和ViewfinderView
被覆盖全屏幕:
<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<SurfaceView android:id="@+id/preview_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_centerInParent="true"/>
<com.google.zxing.client.android.ViewfinderView
android:id="@+id/viewfinder_view"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="@color/transparent"/>
</FrameLayout>
注意fill_parent
值layout_height
和layout_width
两种意见。
然后他们在ViewfinderView.onDraw()
方法中绘制自定义事件,只是在摄像头预览显示内容的顶部。
如果你不想画任何东西,但只是使用预定义的图像,然后使用ImageView
而不是ViewfinderView
。您可能会考虑调用setAlpha
方法来使图像透明(如果drawable本身不是透明的)。
这里是从条码扫描仪的屏幕截图: