我正在使用iOS 13中引入的VisionKit框架进行文档捕获。这是一个非常好的用于捕获文档的框架。但在这个框架中,有一个导航栏上有两个按钮(Retake和Done)。当我点击这些按钮时,应用程序会崩溃,并显示以下原因:-
未捕获异常 'NSInternalInconsistencyException',原因:'应用程序在UIApplication上调用了-statusBar或-statusBarWindow:必须更改此代码,因为不再有状态栏或状态栏窗口。请改为在窗口场景上使用statusBarManager对象。'
我尝试通过将preferredStatusBarUpdateAnimation返回false来解决此问题,但没有成功。
以下是代码片段:-
有什么方法可以解决这个问题,防止它崩溃吗?
未捕获异常 'NSInternalInconsistencyException',原因:'应用程序在UIApplication上调用了-statusBar或-statusBarWindow:必须更改此代码,因为不再有状态栏或状态栏窗口。请改为在窗口场景上使用statusBarManager对象。'
我尝试通过将preferredStatusBarUpdateAnimation返回false来解决此问题,但没有成功。
以下是代码片段:-
import UIKit
import VisionKit
class DetectDocumentViewController: UIViewController, VNDocumentCameraViewControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func tapMeAction(_ sender: UIButton) {
let vc = VNDocumentCameraViewController()
vc.delegate = self
present(vc, animated: true)
}
func documentCameraViewController(_ controller: VNDocumentCameraViewController, didFinishWith scan: VNDocumentCameraScan) {
print("Found \(scan.pageCount)")
for i in 0 ..< scan.pageCount {
let img = scan.imageOfPage(at: i)
print(img)
// ... your code here
}
controller.dismiss(animated: true, completion: nil)
}
func documentCameraViewControllerDidCancel(_ controller: VNDocumentCameraViewController) {
controller.dismiss(animated: true)
}
func documentCameraViewController(_ controller: VNDocumentCameraViewController, didFailWithError error: Error) {
print(error)
controller.dismiss(animated: true)
}
}
有什么方法可以解决这个问题,防止它崩溃吗?