Я создал фреймворк и добавил xib для этого, также есть несколько сторонних фреймворков.
Когда я нажимаю кнопку пользовательского интерфейса приложения, следующий метод вызовет
@IBAction func Scan(_ sender: Any) {
DocHandler.shared.loadxib()
}
В моей пользовательской среде «Docsdk.framework». Код выглядит следующим образом
import UIKit
public class DocHandler :UIViewController{
public static let shared = DocHandler()
public init(){
print("init")
super.init(nibName: "DocViewController", bundle: Bundle(for: DocViewController.self))
//startCapture()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
public func loadxib(){
present(DocViewController(), animated: true, completion: nil)
}
}
У меня есть еще один файл .swift «DocViewController.swift» и один xib для загрузки для того же
Он выглядит ниже
import UIKit
import QKMRZParser
import QKMRZScanner
public class DocViewController: UIViewController, QKMRZScannerViewDelegate {
public static let shared = DocViewController()
public func mrzScannerView(_ mrzScannerView: QKMRZScannerView, didFind scanResult: QKMRZScanResult) {
print(scanResult)
}
@IBOutlet weak var mrzScannerView: QKMRZScannerView!
override public func viewDidLoad() {
super.viewDidLoad()
mrzScannerView.delegate = (self as QKMRZScannerViewDelegate)
}
override public func viewDidAppear(_ animated: Bool) {
mrzScannerView.startScanning()
}
public init() {
super.init(nibName: "DocViewController", bundle: Bundle(for: DocViewController.self))
//startCapture()
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}
Я создаю этот фреймворк и встраиваю в приложение, затем он показывает ниже ошибку
2020-03-25 23:06:15.079539+0530 TestDoc[2963:452977] Warning: Attempt to present <Document.DocViewController: 0x106207410> on <Document.DocHandler: 0x106206ec0> whose view is not in the window hierarchy!