This question already has an answer here:
I'm trying to open file in thread and here is my code:
DispatchQueue.main.async(execute: { () -> Void in
var documentsURL = (FileManager.default.urls(for: .documentDirectory, in: .userDomainMask)).appendPathComponent(“File.pdf")
self.docController = UIDocumentInteractionController.init(url: documentsURL as URL)
self.docController?.delegate = self as? UIDocumentInteractionControllerDelegate
self.docController?.presentPreview(animated: true)
self.docController?.presentOpenInMenu(from: CGRect.zero, in: self.view, animated: true)
})
when move to main screen this warning is displayed and file not open
Warning: Attempt to present <_UIDocumentActivityViewController: 0x...> on <HCM.PrintVacationDecisionVC: 0x...> whose view is not in the window hierarchy!
Any help to solve this problem?
Add extention given bellow to your application and use it any where you want to present any view controller, it works for me hope it helps you.
And Present it by following code:
If you are attempting to present a modal view controller within the viewDidLoad method, can try to move this call to the viewDidAppear: method.
You need to find top view controller
From
https://stackoverflow.com/a/26859650/4601900
}
How to use