【发布时间】:2014-10-09 19:30:57
【问题描述】:
正如问题所述,我无法使用 Swift 语言为自定义相机叠加层设置视图框架。我不断收到一个错误,指出我不太明白“可选类型“CGRect”的值未解包”。问题线是这一行:
cameraOverlay.frame = camera.cameraOverlayView?.frame
Xcode 尝试通过在帧末尾添加一个 bang (!) 来自动更正该问题,但这也不起作用,并且会产生另一个错误。
这是我的自定义相机覆盖的整个笔尖初始化代码:
@IBOutlet var cameraOverlay: UIView!
override func viewDidLoad()
{
super.viewDidLoad()
var camera = UIImagePickerController()
camera.delegate = self
camera.allowsEditing = false
camera.sourceType = UIImagePickerControllerSourceType.Camera
camera.showsCameraControls = false
NSBundle.mainBundle().loadNibNamed("CameraOverlay", owner: self, options: nil)
cameraOverlay.frame = camera.cameraOverlayView?.frame
camera.cameraOverlayView = cameraOverlay
cameraOverlay = nil
self.presentViewController(camera, animated: false, completion: nil)
}
感谢任何帮助。谢谢!
编辑 确保您的笔尖视图没有白色背景,否则相机将不会出现。将视图背景颜色设置为 clearColor,并确保未选中 opaque 以确保安全。我有一段时间遇到这个问题,直到我意识到发生了什么。
【问题讨论】:
标签: swift ios8 uiimagepickercontroller