2017-03-16 97 views
0

我是新來的Swift,我試圖創建一個自定義相機。AVCaptureSession隱藏故事板中的按鈕

我一直在關注this教程,我的問題是相機層隱藏了我插入故事板的按鈕。

代碼:

override func viewWillAppear(_ animated: Bool) { 
     super.viewWillAppear(animated) 

     captureSession = AVCaptureSession() 
     captureSession?.sessionPreset = AVCaptureSessionPreset1920x1080 

     let backCamera = AVCaptureDevice.defaultDevice(withMediaType: AVMediaTypeVideo) 
     var error: NSError? 

     do { 
      let input = try AVCaptureDeviceInput(device: backCamera) 

      if (error == nil && captureSession?.canAddInput(input) != nil) { 

       captureSession?.addInput(input) 

       stillImageOutput = AVCaptureStillImageOutput() 
       stillImageOutput?.outputSettings = [AVVideoCodecKey : AVVideoCodecJPEG] 

       if (captureSession?.canAddOutput(stillImageOutput) != nil) { 
        captureSession?.addOutput(stillImageOutput) 

        previewLayer = AVCaptureVideoPreviewLayer(session: captureSession) 
        previewLayer?.videoGravity = AVLayerVideoGravityResizeAspect 
        previewLayer?.connection.videoOrientation = AVCaptureVideoOrientation.portrait 
        cameraView.layer.addSublayer(previewLayer!) 
        captureSession?.startRunning() 
       } 
      } 
     } catch {  
     } 
    } 

任何幫助表示讚賞!

+1

嘗試在索引零位'cameraView.layer.insertSublayer(previewLayer,at:0)處插入previewLayer'而不是僅僅添加圖層。 –

+0

工作,謝謝! – Cuckoo

回答

0

您可以嘗試在故事板中更改視圖的層次結構。並確保您的button位於視圖層次結構中的Camera View之後。

ViewController 
    - Top Layout Guide 
    - Bottom Layout Guide 
    - View 
    - Camera View 
    - Button 
    - First Responder 
    - Exit