2012/05/24更新

[XCODE] UIViewにタップした際のイベントを登録する

このエントリーをはてなブックマークに追加      

今日は、UIViewを拡張せずともタッチイベントを登録する方法を学んだので、ブログに残しておきたいと思います。

How to use UIGestureRecognizer Image





UIViewクラスのaddGestureRecognizer:メソッド

このメソッドでジェスチャーを追加することで、Viewをタップした際の動作を追加することが出来ます。以下のような手順で実装します。


UITapGestureRecognizerオブジェクトを作成

どのような動きをするかのジェスチャーオブジェクトを作成します。今回はTapジェスチャーを追加します。

UITapGestureRecognizer *tapGesture = [[[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(colorPicker:)]autorelease];

initWithTargetには、タップした際に呼び出すメソッドを持つオブジェクトを、actionには、タップした際のメソッドを指すSelectorを指定します。


UIViewにジェスチャーを追加

上記で作成したジェスチャーをUIViewのaddGestureRecognizerメソッドで追加します。

[aView addGestureRecognizer:tapGesture];

たったこれだけで、簡単にUIViewにタップイベントを追加することが出来ます。簡単ラクチン♪(´ε` )





他にも

今回ブログに書いたタップジェスチャー以外にも、色々なジェスチャーを登録出来るようです。以下のが一覧です。

UITapGestureRecognizerタップ時のイベント
UIPinchGestureRecognizerピンチ時のイベント
UIRotationGestureRecognizer回転した時のイベント
UISwipeGestureRecognizerスワイプした時のイベント
UIPanGestureRecognizerパンした時のイベント
UILongPressGestureRecognizer長押しした際のイベント




参考サイト

上記の内容の詳細は、以下をご確認下さい。

UIView Class Reference

UIGestureRecognizer Class Reference





最後に

UIViewは色々な機能を持っていて便利ですね。ありがたい。もっともっと色々な事を学べるといいなぁ(*´∇`*)







こんな記事もいかがですか?

RSS画像

もしご興味をお持ち頂けましたら、ぜひRSSへの登録をお願い致します。