Я хочу сделать Camera
активность (т.е. активность, которая показывает предварительный просмотр камеры), в которой имеет квадратную форму (это на самом деле немного сложнее форма, но я говорю, площадь для простота) накладывается на предварительный просмотр камеры, так что пользователь знает, где разместить камеру таким образом, чтобы конкретный квадратный реальный объект располагался внутри этой квадратной формы, наложенной на предварительный просмотр камеры.
Точно так же, как в изображении камеры есть форма лица в следующем изображении, чтобы пользователь мог поместить свое лицо туда.
Мое решение:
Я думал, имеющий FrameLayout
, а затем с SurfaceView
для камеры предварительного просмотра и VectorDrawable
для формы, чтобы быть наложен как FrameLayout
бы Z-порядок его детей, так что VectorDrawable
будет наложено на SurfaceView
.
Проблемы с ним:
Мне нужно мое приложение, чтобы быть совместимым с API 11 и выше. Поэтому мне пришлось бы использовать VectorDrawableCompat
. Чтобы использовать VectorDrawableCompat
, нам необходимо установить флаг AAPT. - source
Проблема в том, что везде в Интернете способ установить этот флаг для Android Studio. (например, описанный метод here) Несколько строк должны быть добавлены в файл build.gradle проекта.
Я не мог узнать, как установить этот флаг в Eclipse. Я продолжал поиск и в итоге установил плагин Eclipse Buildship для использования Gradle в Eclipse. Я следовал this guide. Когда я добавил природу Gradle в свой проект Android, я получил файл build.gradle
. Я вставил код, чтобы включить этот флаг AAPT в нем , но это не помогло моей проблеме вообще.
ТАК ТЕПЕРЬ Я СМОТРЕТЬ ДЛЯ АЛЬТЕРНАТИВНОГО МЕТОДА, ЧТОБЫ ДОСТИГАТЬ МОЙ ЗАДАЧИ. ПОЖАЛУЙСТА, СКАЖИТЕ МЕНЯ, КАК МОЖНО СДЕЛАТЬ ЭТО, БЕЗ ИСПОЛЬЗОВАНИЯ VectorDrawableCompat
?
Почему вы не использовать PNG-файл вместо VectorDrawable? – nshmura
Потому что это будет проблема для разных размеров экрана? @nshmura – Solace
Да, но я думаю, что проблема мало. Я написал ответ, чтобы объяснить. – nshmura