Как распечатать SFSafariViewController полной веб-страницы? - PullRequest
0 голосов
/ 03 июля 2018

Я открываю файл PDF в SFSafariViewController. Теперь я хочу распечатать этот PDF из SFSafariViewController.

Но кнопка Share контроллера Safari View не имеет опции печати. ​​

Подскажите, пожалуйста, как добавить функцию печати в SFSafariViewController.

1 Ответ

0 голосов
/ 03 июля 2018

Вы можете настраивать активность.

    extension ViewController: SFSafariViewControllerDelegate {
        func safariViewController(_ controller: SFSafariViewController, activityItemsFor URL: URL, title: String?) -> [UIActivity] {
            let acitivity = CustomActivity()
            return [acitivity]
        }

        func printURL(url: URL) {
        }
    }

CustomActivity.swift

import Foundation
import UIKit

class CustomActivity: UIActivity {
    override class var activityCategory: UIActivityCategory {
        return .action
    }

    override var activityType: UIActivityType? {
        return UIActivityType.print
    }

    override var activityTitle: String? {
        return "Print"
    }

    override var activityImage: UIImage? {
        return nil
    }

    override func canPerform(withActivityItems activityItems: [Any]) -> Bool {
        return true
    }

    override func perform() {
        // do something here
    }

}

enter image description here

...