iPhoneアプリ開発の虎の巻
HOME > UIResponder

UIResponder

UIResponderクラスは、画面タッチやデバイスのシェイクなどのイベントを管理するクラスです。
UIKitFrameworkのクラスはほとんどがこのクラスを継承しています。

UIResponderのクラス階層

NSObject ↑ UIResponder

UIResponderのメソッド

【UIResponderの主要メソッド】
メソッド名 説明
-(BOOL)isFirstResponder ファーストレスポンダかどうかの判定
-(UIResponder *)nextResponder 次順のレスポンダを返す
-(BOOL)becomeFirstResponder ファーストレスポンダにする
-(BOOL)resignFirstResponder ファーストレスポンダでなくす

主要なメソッドのみ掲載しています。
 上記「UIResponderのクラス階層」にあるクラスのメソッドも使用できます。

UIResponderのデリゲートメソッド

【UIResponderの主要デリゲートメソッド】
メソッド名 説明
-(void)touchesBegan:
(NSSet *)touches
withEvent:(UIEvent *)event
タッチした時に呼ばれるメソッド
※touchesの中身はUITouchクラス
-(void)touchesMoved:
(NSSet *)touches
withEvent:(UIEvent *)event
ドラッグした時に呼ばれるメソッド
※touchesの中身はUITouchクラス
-(void)touchesEnded:
(NSSet *)touches
withEvent:(UIEvent *)event
画面タッチが外れた時に呼ばれるメソッド
※touchesの中身はUITouchクラス
-(void)touchesCancelled:
(NSSet *)touches
withEvent:(UIEvent *)event
割り込みイベント等により画面タッチがキャンセルされた時に呼ばれるメソッド
-(void)motionBegan:
(UIEventSubtype)motion
withEvent:(UIEvent *)event
モーションイベントの開始を検知した時に呼ばれるメソッド
-(void)motionEnded:
(UIEventSubtype)motion
withEvent:(UIEvent *)event
モーションイベントの終了を検知した時に呼ばれるメソッド
-(void)motionCancelled:
(UIEventSubtype)motion
withEvent:(UIEvent *)event
割り込みイベント等によりモーションイベントがキャンセルされた時に呼ばれるメソッド

主要なメソッドのみ掲載しています。

UIResponder例文

// タッチされた場所の座標を取得する
CGPoint p = [[touches anyObject] locationInView:self.view];
float x = p.x;    // X座標
float y = p.y;    // Y座標

※上記のtouchesBegan、touchesMoved、touchesEnded、touchesCancelledデリゲートメソッド内に記述します。

totop