Как установить размер для TextureView для предпросмотра изображения с камеры на Android 4.0+, сохранив соотношение сторон изображения?
Здравствуйте. Стоит задача установить размеры TextureView для предпросмотра изображения с камеры таким образом, чтобы соотношение сторон TextureView соответствовало соотношению сторон наилучшего размера предпросмотра изображения с камеры. Сейчас делаю так:
1. В onResume() получаю экземпляр камеры
2. С помощью DisplayMetrics узнаю размеры доступного пространства на экране
3. Подбираю размер предпросмотра изображения с камеры таким образом, чтобы его соотношение сторон было наиболее близко к соотношению сторон экрана телефона
4. С помощью соотношения сторон предпросмотра и размера экрана телефона узнаю наибольший размер TextureView
5. Через setLayoutParams устанавливаю размер TextureView
6. TextureView с layout_gravity="center" занимает весь экран смартфона, пустые места остаются чёрными.
Интересно, правильно ли я все делаю, и есть ли другие (более простые) способы?