Swift 相机应用程序 - 启用横向模式右/左

标签 swift xcode camera avfoundation landscape

我是 Swift 新手,我尝试在横向模式(左和右)下实现相机应用程序。 我尝试了视频教程,相机应用程序基本上可以工作,但只能在纵向模式下(不是横向)。 如果我在项目中启用横向左+右(并且禁用纵向模式),相机看起来像这样:

enter image description here

我做错了什么?我找到了一些关于同一问题的帖子,但没有一个能帮助我解决问题。

最诚挚的问候

我尝试了像 CGAffineTransform(rotationAngle: -90) 这样的仿射变换,但这也不能解决问题。


import UIKit
import AVFoundation

class ViewController: UIViewController {


    @IBOutlet weak var cameraView: UIView!

    var captureSession: AVCaptureSession?
    var videoPreviewLayer: AVCaptureVideoPreviewLayer?
    var backCamera = AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: .back)



    override func viewDidLoad() {
        super.viewDidLoad()

        if #available(iOS 10.2, *)
        {
            let captureDevice = AVCaptureDevice.default(.builtInWideAngleCamera, for: .video, position: .back)
            do
            {
                let input = try AVCaptureDeviceInput(device: captureDevice!)
                captureSession = AVCaptureSession()
                captureSession?.addInput(input)
                videoPreviewLayer = AVCaptureVideoPreviewLayer(session: captureSession!)
                videoPreviewLayer?.frame = view.layer.bounds
                cameraView.layer.addSublayer(videoPreviewLayer!)
                captureSession?.startRunning()
            }
            catch
            {
                print("error")
            }
        }

    }

最佳答案

试试这个:

private var previewLayer: AVCaptureVideoPreviewLayer?

previewLayer?.connection?.videoOrientation = .landscapeLeft
previewLayer?.connection?.videoOrientation = .portrait

关于Swift 相机应用程序 - 启用横向模式右/左,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58693530/

相关文章:

swift - 如何在 Swift 3 中每秒更改一次的视频中添加文本水印?

dictionary - 创建一个 NSDictionary 作为 Int :String out of an plist-file

ios - 从本地下载 url 图像和 uitableview 单元格图像并在 iOS 中并行执行。如何实现?

youtube - WebRTC P2P流youtube视频

android - 2048x1536 是 Android 设备上常见的相机分辨率吗?

ios - UIKeyboardWillShow 在第一次使用键盘时调用了两次

ios - Swift:禁用 UITableViewCell 上的触摸

ios - xcode/ Storyboard : can't drag bar button to toolbar at top

xcode - 尽管 Objcflags,"unrecognized selector sent to instance"到静态库

Java - 从数码相机捕获图像