Android Camera Preview, показывающий угловые изображения - PullRequest
2 голосов
/ 03 декабря 2011

Я создаю приложение, в котором я хочу ограничить предварительный просмотр камеры примерно до 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 Ответ

1 голос
/ 03 декабря 2011

Поместите вид поверхности в относительный макет и добавьте изображения поверх него:

<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 патчами

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...