【发布时间】:2018-09-07 05:33:26
【问题描述】:
在我的应用程序中,我正在通过自定义相机捕获图像。因此,在捕获图像时,我正在展示控制器,因此它在中心显示相机,并且看起来像捕获图像。 这是它的代码
let layerVC = cameraLayerViewController(nibName: "cameraLayerViewController", bundle: nil)
layerVC.modalPresentationStyle = .custom
Global.appDelegate.window?.rootViewController?.presentedViewController?.present(layerVC, animated: false, completion: nil)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.4, execute: {
layerVC.dismiss(animated: false, completion: nil)
}
但是当改变相机模式时,我会在同一个控制器上显示另一个控制器
if (UserDefaults.standard.value(forKey: Global.g_UserDefaultKey.isFrontCamera) as? Bool == true)
{
UserDefaults.standard.set(false, forKey: Global.g_UserDefaultKey.isFrontCamera)
let controller : CameraVC = CameraVC(nibName: "CameraVC", bundle: nil)
self.present(controller, animated: false, completion: nil)
}
else
{
UserDefaults.standard.set(true, forKey: Global.g_UserDefaultKey.isFrontCamera)
let controller : CameraVC = CameraVC(nibName: "CameraVC", bundle: nil)
self.present(controller, animated: false, completion: nil)
}
现在,当我在这个控制器上时,我试图展示它不工作的任何控制器。
let layerVC = cameraLayerViewController(nibName: "cameraLayerViewController", bundle: nil)
layerVC.modalPresentationStyle = .custom
Global.appDelegate.window?.rootViewController?.presentedViewController?.present(layerVC, animated: false, completion: nil)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.4, execute: {
layerVC.dismiss(animated: false, completion: nil)
}
所以让我知道如何在已经呈现的控制器上呈现控制器。
【问题讨论】:
-
如果您显示您想要实现的目标的屏幕截图会很有帮助。您也可以解释什么不起作用。我不会投反对票,因为也许是我错过了问题的重点,但我确实建议简化问题(编写专门提出问题的代码,而不是从项目中引入代码,并使其尽可能简单)
-
试试这个,如果对你有帮助,请告诉我-stackoverflow.com/questions/49424511/…
标签: ios swift uiviewcontroller