问题描述
我已使用视觉套件进行文档扫描。我可以扫描和保存文档,但是解雇后返回此屏幕后,旧的扫描图像显示在屏幕的左下角。解雇后如何清除扫描阵列?
代码:
let vc = VNDocumentCameraViewController()
override func viewDidLoad() {
super.viewDidLoad()
vc.delegate = self
}
//Save button action in document VC
func documentCameraViewController(_ controller: VNDocumentCameraViewController,didFinishWith scan: VNDocumentCameraScan) {
print("Found \(scan.pageCount)")
var imgArray: Array<UIImage> = []
for i in 0 ..< scan.pageCount {
let image = scan.imageOfPage(at: i)
imgArray.append(image)
}
dismiss(animated: true) {
self.getFileName(img: imgArray)
}
}
Marked the scanned images icon at the bottom left
解决方法
似乎,您在视图控制器对象的vc
常量中保留了指向VNDocumentCameraViewController实例的链接。当您第二次显示该实例时,将重复使用同一实例。
尝试像这样创建并显示它:
func showDocumentCamera() {
let vc = VNDocumentCameraViewController()
vc.delegate = self
present(vc,animated: true)
}