2017-01-28 13 views
-2

私はViewControllerをtouchesBeganとtouchesEndedの使い方は?

override func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?) { 
    print("started") 
} 

override func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?) { 
    print("ended") 
} 

上のコードの下に追加さが、それはまったくのメッセージを印刷しません。

+0

ではなく、ビューコントローラのビューにこれらを入れてみてください終わりました。 (私は、これらがUIViewControllerでオーバーライドできることに驚きました) – dfd

+0

@dfd私はSwiftの初心者です。これらのコードをViewControllerではなくViewに配置する方法を教えてください。 –

答えて

1

UIResponderクラスのオーバーライド、あなたがtouchesBegantouchesEndedを使用したい場合はUIWindow、のUIViewController、UIViewのはUIResponder

のサブクラスであるに応答する抽象インタフェースと イベント処理 Apple API Reference

ですそれは

タッチイベントフォローレスポンダーチェーンを参照してくださいいくつかのタッチイベントが発生

enter image description here

とタッチと呼ばれ、次のレスポンダとタッチが始まったときに呼び出さhittest成功しtouchesBegantouchesEndedになるあなたのViewControllerのビューが

+0

UIViewController上の上記のコードをオーバーライドしました。違いますか? –

関連する問題