使用android.hardware.Camera,为了使摄像机输出适本地跟踪设备的运动,我们需要将OrientationEventListener链接到setDisplayOrientation()上的Camera方法。这样,当用户扭转设备时,我们可以使相机预览中的“正常显示”与现实世界中的“正常显示”保持同步。对于围绕Y轴旋转设备(即从横向翻转为反向横向或向后翻转)尤其如此。

对于大多数方向更改,android.hardware.camera2 API似乎“有效”。但是,对于该Y轴旋转(横向->反向横向,反之亦然),相机预览最终将被反转。

为Camera2 API在setDisplayOrientation()上调用Camera相当于什么,因此我们可以处理这种情况?

最佳答案

正如您所注意到的,这对于camera2 API上的SurfaceView应该是“正常工作”的。

因此,没有等效的setDisplayOrientation()

我们之前从未听说过此问题,因此有几个问题:

  • 您是否已将应用锁定为横向模式,或者是否允许更改方向?
  • 是您处理自己的方向更改,还是在方向更改时拆除框架并重新启动应用程序?
  • 发生180度旋转时,您是否会触发任何类型的重新布局,例如调整快门按钮的位置?
  • 09-25 22:16