Android Camera Preview显示角落图像

时间:2011-12-03 15:42:52

标签: android android-camera

我正在创建一个应用程序,我想将相机预览限制在相机屏幕的80%左右。我可以使用layout_weight = 0.8来完成它。现在我需要在相机预览的角落实现边框。

我附上了我真正想要完成的事情的快照。以红色显示的边框是我真正想要的。任何指针都会有所帮助。

enter image description here

以下是我将相机图像缩小到80%的方法。

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal" android:layout_width="match_parent"
android:layout_height="match_parent" android:gravity="center"
android:weightSum="1.0">
<LinearLayout android:orientation="vertical" android:id="@+id/surfaceparent"
    android:layout_width="0dp" android:layout_height="match_parent"
    android:layout_weight="0.8" android:gravity="center"
    android:weightSum="1.0">
    <SurfaceView android:id="@+id/camera_preview"
        android:layout_width="fill_parent" android:layout_height="0dp"
        android:layout_weight="0.8">
    </SurfaceView>
</LinearLayout>
</LinearLayout>

1 个答案:

答案 0 :(得分:1)

将surfaceview放在相对布局中并在其上添加图像:

<RelativeLayout android:orientation="vertical" android:id="@+id/surfaceparent"
    android:layout_width="0dp" android:layout_height="match_parent"
    android:layout_weight="0.8" android:gravity="center"
    android:weightSum="1.0">
    <SurfaceView android:id="@+id/camera_preview"
        android:layout_width="fill_parent" android:layout_height="0dp"
        android:layout_weight="0.8">
    </SurfaceView>
    <ImageView android:src="@drawable/tl" android:layout_alignParentTop="true" android:layout_alignParentLeft="true" />
    <ImageView android:src="@drawable/tr" android:layout_alignParentTop="true" android:layout_alignParentRight="true" />
   <ImageView android:src="@drawable/bl" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" />
   <ImageView android:src="@drawable/br" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" />
</RelativeLayout>

或者你可以有一个9补丁图像