Swift PencilKit、PKToolPickerの表示・非表示

PencilKitの基本

class PencilKitViewController: UIViewController {
    var pkcanvasview: PKCanvasView?
    let pktoolpicker = PKToolPicker()
    
    override func viewDidLoad() {
        super.viewDidLoad()

        self.pkcanvasview = PKCanvasView(frame: .zero)
        if let view = self.pkcanvasview {
            view.isOpaque = false
            view.backgroundColor = .clear
            view.drawingPolicy = .pencilOnly
            self.pktoolpicker.addObserver(view)
            self.pktoolpicker.setVisible(true, forFirstResponder: view)
            view.becomeFirstResponder()
            self.view = view
:
:
:

PKToolPickerの表示・非表示

PKToolPickerのsetVisible(_:forFirstResponder:)を使用

非表示にしたいタイミング(例えばボタン押下タイミング等)で下記をコール

self.pktoolpicker.setVisible(false, forFirstResponder: view)

Swift

Posted by shi-n