2
2

More than 3 years have passed since last update.

最小実装 iPadOS 13.4 Pointer Interactions

Last updated at Posted at 2020-04-15

iPadOS 13.4からマウスやトラックパッドのサポートが強化されました。
一部のUIKitは自動で対応してくれますが、その他は自分で実装可能です。
意外と簡単だったので最小実装をしてみようと思います。

File from iOS.gif

最小実装

import UIKit

class ViewController: UIViewController {

    @IBOutlet weak var targetView: UIView!

    override func viewDidLoad() {
        super.viewDidLoad()
        let pointerInteraction = UIPointerInteraction(delegate: self)
        targetView.addInteraction(pointerInteraction)
    }
}

extension ViewController: UIPointerInteractionDelegate {
    func pointerInteraction(_ interaction: UIPointerInteraction, styleFor region: UIPointerRegion) -> UIPointerStyle? {
        guard let interactionView = interaction.view,
            targetView == interactionView else {
                return nil
        }
        let targetedPreview = UITargetedPreview(view: interactionView)
        let effect = UIPointerEffect.lift(targetedPreview)
        let pointerStyle = UIPointerStyle(effect: effect)
        return pointerStyle
    }
}

どうでしょうか?簡単ですね。ここからいじって拡張してみてください。
こちらも気になったらどうぞ :link: iPadOS 13.4 Pointer InteractionsでAppleロゴのポインタを出す

参考

:link: Pointers (iPadOS) - Human Interface Guidelines
:link: Pointer Interactions - Apple Developer

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2