Обрезка / обрезка камеры предварительного просмотра, чтобы показать верхнюю половину изображения - PullRequest
0 голосов
/ 08 июня 2011

Я разрабатываю приложение, которое показывает предварительный просмотр камеры на SurfaceView, но я хочу показать только верхнюю половину предварительного просмотра.

Есть ли способ обрезки / обрезки вида или у меня будетприбегнуть к маскировке нижней половины чем-то вроде изображения, другого вида или рисунка?

С уважением, Саймон

Ответы [ 2 ]

0 голосов
/ 11 июня 2011

В настоящее время я использую этот метод для обрезки (в основном использую возможность обрезать дочерний элемент абсолютного макета, чтобы обрезать дочерний вид поверхности)

    <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>
0 голосов
/ 08 июня 2011

Наложение SurfaceView на другой вид - это самый простой способ сделать это ... однако, это довольно уродливо, если вы спросите меня.

Почему бы просто не установить высоту SurfaceView вручную?Заставьте его занять 50% места на экране, и он будет делать то, что вы хотите.Вы не предоставляете код, поэтому нам нужно сделать некоторые предположения: предположим, у вас есть LinearLayout, затем внутри него вы поместите два вида: ваш вид поверхности и другой вид.Затем вы устанавливаете их рост равным 0 dip, а их вес - 1 ... это должно быть сделано.

...