blob: 82ec7ae1974f830661f34f42931b0bea4fc4c353 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
import SwiftUI
import UIKit
enum ExportPresenter {
static func share(filename: String, contents: String) {
let url = FileManager.default.temporaryDirectory.appendingPathComponent(filename)
do {
try contents.write(to: url, atomically: true, encoding: .utf8)
} catch {
return
}
let activityController = UIActivityViewController(activityItems: [url], applicationActivities: nil)
guard let windowScene = UIApplication.shared.connectedScenes.first as? UIWindowScene,
let rootViewController = windowScene.keyWindow?.rootViewController else {
return
}
var presenter = rootViewController
while let presentedViewController = presenter.presentedViewController {
presenter = presentedViewController
}
activityController.popoverPresentationController?.sourceView = presenter.view
presenter.present(activityController, animated: true)
}
}
|