参照には、 「タップやスワイプ UIGestureRecognizer
などの個別のイベントは、ジェスチャー内の変更を報告できません」と記載されています。
指が画面に触れたとき (まだ画面から離れていないとき) に通知を受け取り、画面から離れたときに通知を受け取るにはどうすればよいですか?
ご協力いただきありがとうございます!
参照には、 「タップやスワイプ UIGestureRecognizer
などの個別のイベントは、ジェスチャー内の変更を報告できません」と記載されています。
指が画面に触れたとき (まだ画面から離れていないとき) に通知を受け取り、画面から離れたときに通知を受け取るにはどうすればよいですか?
ご協力いただきありがとうございます!
を使用してタッチを検出できます
ObjC の回答:
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
- (void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
Swift 3.0 の回答:
func touchesBegan(_ touches: Set<UITouch>, with event: UIEvent?)
func touchesEnded(_ touches: Set<UITouch>, with event: UIEvent?)
あなたの答えはあなたの質問のタイトル、つまりUIGestureRecognizerStateにあります。ターゲット メソッドで、gestureRecognizer の状態を確認する必要があります。お気に入り:
- (void)handleTap:(UITapGestureRecognizer *)sender {
if (sender.state == UIGestureRecognizerStateEnded) {
// handling code
}
else {
//do anything else
}
}
可能な列挙型は次のとおりです。
UIGestureRecognizerStatePossible,
UIGestureRecognizerStateBegan,
UIGestureRecognizerStateChanged,
UIGestureRecognizerStateEnded,
UIGestureRecognizerStateCancelled,
UIGestureRecognizerStateFailed,
UIGestureRecognizerStateRecognized = UIGestureRecognizerStateEnded
それが役立つかもしれません。