質問編集履歴

1 SwiftUIタグの削除

tmsah

tmsah score 87

2019/11/24 00:21  投稿

(Swift5)UIPageViewController上でtouches.first.typeを使いたい
### 前提・実現したいこと
Swift5初心者です.ストーリーボードは使っておりません.
`UIPageViewController`を受けたクラスで `UIView`クラスの `touches.first.type`を使うことはできないのでしょうか.
現在,iPadで使うペイントアプリを開発しているのですが,そこでペンタブレットでタッチした時はキャンバスに線を描画し,指でスワイプをした時は別のキャンバスに移る,という処理を実装したいと考えています.
描画部分では想定通りの動き( `touchesBegan`や `touchesMoved`)ができていることは確認済みです.
そしてスワイプ部分は現在 `UIPageViewController`で生成したインスタンスに複数の `UIView`インスタンス(キャンバス)を乗せる,という実装をしています.
しかしこの `UIPageViewController`上でペンと指の判別ができないため,ペンで横線を書こうとするとそのままキャンバスの遷移が起こってしまっています(縦線はスワイプイベントが起こらないので描画ができます).
ペンと指を区別するために `UIView`クラスの `touches.first.type`を使うことを考えたのですが,どう実装すれば `UIPageViewController`内でこれが使えるのかが分かりませんでした,
この問題を解決するコード例や,機能実現の別のアイディア等を教えていただきたいです.
(例えば, `UIView`の方が `UIPageViewController`より先に `touch`のイベントを受け取る方法など)
  • Swift

    14236 questions

    Swiftは、アップルのiOSおよびOS Xのためのプログラミング言語で、Objective-CやObjective-C++と共存することが意図されています

  • SwiftUI

    559 questions

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る