1
ビデオプレビューレイヤー上にオーバーレイを作成しようとしています。私は次のことを試みた。しかし、私のオーバーレイビューはプレビューレイヤーの上に表示されていません。単に空白の画面が表示されます。AVCaptureVideoPreviewLayerオーバーレイ
CameraOverlayViewは
let previewLayer: AVCaptureVideoPreviewLayer = AVCaptureVideoPreviewLayer(session: self.avCaptureSession)
previewLayer.frame = self.view.layer.frame
previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
self.view.layer.addSublayer(previewLayer)
let cameraOverlay = CameraOverlay(nibName:"CameraOverlay",bundle: nil)
let cameraOverlayView:CameraOverlayView = cameraOverlay.view as! CameraOverlayView
self.view.addSubview(cameraOverlayView)
cameraOverlayView.layer.addSublayer(previewLayer)
self.view.bringSubviewToFront(cameraOverlayView)
しかし、私は、個々のボタンと、彼らが表示されるプレビュー層上のUIViewを追加していたときに私のデザインが含まれています。
しかし、私はオーバーレイとしてそのようなビューの多くを捨てたいと私はまたconstaintsを追加したい。もし私がオーバーレイとして自分のペン先を追加できるのであれば、はるかに簡単です。
let previewLayer: AVCaptureVideoPreviewLayer = AVCaptureVideoPreviewLayer(session: self.avCaptureSession)
previewLayer.frame = self.view.layer.frame
previewLayer.videoGravity = AVLayerVideoGravityResizeAspectFill
self.view.layer.addSublayer(previewLayer)
//Add Rectangle
var cgRect = CGRectMake(0, 0, previewLayer.frame.width * (3/4) , previewLayer.frame.height)
let myView = UIImageView()
myView.frame = cgRect
myView.backgroundColor = UIColor.clearColor()
myView.opaque = false
myView.layer.cornerRadius = 10
myView.layer.borderColor = UIColor.blackColor().CGColor
myView.layer.borderWidth = 3
myView.layer.masksToBounds = true
//previewLayer.addSublayer(myView.layer)
//Add Rectangle
//Add Button
let captureButton = UIButton(frame: CGRectMake(0, 0, 100 , 100))
captureButton.backgroundColor = UIColor.grayColor()
captureButton.setTitle("Capture", forState: .Normal)
captureButton.setTitleColor(UIColor.redColor(), forState: .Normal)
captureButton.addTarget(self, action: "actionCapture:", forControlEvents: .TouchDragInside)
let previewView = UIView(frame: view.frame)
view.addSubview(previewView)
previewView.layer.addSublayer(previewLayer)
view.addSubview(myView)
view.addSubview(captureButton)
captureButton.bringSubviewToFront(self.view)
幸運を働きました。あなたが問題を抱えているとき私たちに知らせてください;-) –
@意味 - 問題私は問題をさらに編集して説明しました。それを確認してください。 – Cloy