Camera2 API预览方面已损坏
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Camera2 API预览方面已损坏相关的知识,希望对你有一定的参考价值。
我正在使用Camera2 API来设置图像捕获片段。我只想在纵向模式下使用相机。所以我在片段的父活动的清单中设置了这一行:
android:screenOrientation="portrait"
这会将相机预览锁定为纵向。但是,图像方面是错误的。捕获图像时,方面没有问题,图像看起来应该如此,但仍然不是全屏。我怀疑相机输出被拉伸以在我的预览中填满屏幕。如何使预览和捕获的图像都填满整个屏幕,并像Snapchat一样保持其宽高比呢?
我一直在使用Google sample作为我的参考,并在XML布局文件中将AutoFitTextureView更改为match_parent。
答案
AutoFillTextureView尝试保持宽高比正确,但如果您正在更改其布局参数,则可能无法。
如果你没有让它成为'match_parent',那么事情是否正常?
通常,Android UI元素将使用输入数据填充自己,因此您需要将View的大小设置为正确的宽高比以避免拉伸。
另一答案
对于那些像我一样一直面临这个问题的人,如果你在2017年6月之前使用谷歌样本,那么在你的AutoFitTextureView中调整一行应该可以修复预览的宽高比。这就像将“<”更改为“>”一样简单,你可以看到here。
以上是关于Camera2 API预览方面已损坏的主要内容,如果未能解决你的问题,请参考以下文章
横向模式下的预览方向使用 Camera2 api 顺时针旋转
如何使用Android中的Camera2 API在不预览的情况下拍摄多张照片?