UIEvent


継承:NSObject(Class)

従属:NSObject(Protocol)

フレームワーク: iOS 2.0 以降の UIKit。関連情報...


UIEvent オブジェクトは(または、単に、イベントオブジェクト) は iOS 内のイベントを表します。イベントには3つの一般的なタイプがあります:タッチイベント、モーションイベント、およびリモートコントロールイベントです。リモートコントロールイベントは、レスポンダオブジェクトが外部アクセサリまたはヘッドセットからコマンドを受信できるようにし、例えばビデオを再生したり、次のオーディオトラックにスキップしたり、それはオーディオとビデオを管理できるようにします。モーションイベントは、iOS 3.0 と、iOS 4.0 でのリモートコントロールイベントで導入されました。


イベントオブジェクトのタッチタイプは、イベントに何らかの関係を有する1つ以上のタッチ(すなわち、スクリーン上での指のジェスチャー) を含みます。タッチは UITouch オブジェクトで表されます。タッチイベントが発生すると、システムは適切なレスポンダにルートし、touchesBegan:withEvent: のような UIResponder メソッドを呼び出すメッセージで UIEvent オブジェクトを渡します。レスポンダは、そのイベントのタッチを評価し、またはイベントの特定の相を評価し、それらを適切に処理できます。UIEvent のメソッドはイベント(allTouches) のすべてのタッチを取得するか、与えられたビューまたはウィンドウのためのもの(touchesForView:touchesForWindow:) のみを、得られます。また、その作成(timestamp) の時間のオブジェクトを照会することによって他のイベントを表すオブジェクトからイベントオブジェクトを区別できます。


タッチイベントを表す UIEvent オブジェクトは、マルチタッチシーケンス全体にわたって永続的です。UIKit はアプリケーションに配信されるすべてのイベントのために同じ UIEvent インスタンスを再利用します。イベントオブジェクトまたはイベントオブジェクトから返された全てのオブジェクトを保持する事は決してしてはいけません。ある相から別の相へと周りのイベントからの情報を維持する必要がある場合は、UITouch または UIEvent オブジェクトからその情報をコピーする必要があります。


typesubtype プロパティからイベントタイプとサブタイプを取得できます。UIEvent は、タッチ、モーション、およびリモートコントロールイベントのイベントタイプを定義します。それはまた、"振る" イベントにモーションサブタイプを定義し、"再生" と"前のトラック" のようなリモート・コントロール・イベントのサブタイプ定数のシリーズを定義します。ファーストレスポンダやレスポンダチェーン内の全てのレスポンダは、(motionBegan:withEvent: のような) UIResponder のモーションに関連したメソッドを実装して、シェイキングモーションイベントを処理します。リモートコントロールイベントを処理するために、レスポンダオブジェクトは UIResponder のメソッド remoteControlReceivedWithEvent: を実装する必要があります。


touchesForGestureRecognizer: メソッドは、iOS 3.2 で導入されましたが、それが現在処理しているタッチのジェスチャ認識装置オブジェクト(UIGestureRecognizer のサブクラスのインスタンス) を照会できます。


タスク


イベントのタッチを取得


- allTouches


宣言

<< SWIFT >>

func allTouches() -> Set<UITouch>?


<< OBJECTIVE-C >>

- (NSSet<UITouch *> *)allTouches


戻り値

(受信者によって表される) イベントに関連するすべてのタッチを表す UITouch オブジェクトのセット。


議論

イベントのタッチが異なるビューやウインドウに由来する場合は、このメソッドから得られた UITouch オブジェクトは、タッチに関連する異なるレスポンダオブジェクトを持つことになります。


利用可能

iOS 2.0 以降で利用可能。


以下も見よ

– touchesForView:

– touchesForWindow:





- touchesForView:


受信者で表されるイベントで与えられたビューに属しているタッチオブジェクトを返します。


宣言

<< SWIFT >>

func touchesForView(_ view: UIView) -> Set<UITouch>?


<< OBJECTIVE-C >>

- (NSSet<UITouch *> *)touchesForView:(UIView *)view


パラメーター

viewイベントに関連するタッチがその上で行われた UIView オブジェクト。

戻り値

受信者によって表される、イベントに関連する指定されたビューのタッチを表す UITouch オブジェクトのセット。


利用可能

iOS 2.0 以降で利用可能。


以下も見よ

– allTouches

– touchesForWindow:





- touchesForWindow:


受信者で表されるイベントで与えられたウィンドウに属するタッチオブジェクトを返します。


宣言

<< SWIFT >>

func touchesForWindow(_ window: UIWindow) -> Set<UITouch>?


<< OBJECTIVE-C >>

- (NSSet<UITouch *> *)touchesForWindow:(UIWindow *)window


パラメーター

windowイベントに関連するタッチがその上で行われた UIWindow オブジェクト。

戻り値

受信者によって表されるイベントに関連する指定されたウィンドウのタッチを表す UITouch オブジェクトのセット。


利用可能

iOS 2.0 以降で利用可能。


以下も見よ

– allTouches
– touchesForView:




イベント属性の取得


timestamp プロパティ


イベントが発生した時刻。(読み取り専用)


宣言

<< SWIFT >>

var timestamp: NSTimeInterval { get }


<< OBJECTIVE-C >>

@property(nonatomic, readonly) NSTimeInterval timestamp


議論

プロパティ値は、システムの起動からの秒数です。この時間値の説明については、NSProcessInfo クラスの systemUptime メソッドの説明を参照してください。


利用可能

iOS 2.0 以降で利用可能。





イベントの種類を取得


type プロパティ


イベントの種類を返します。(読み取り専用)


宣言

<< SWIFT >>

var type: UIEventType { get }


<< OBJECTIVE-C >>

@property(nonatomic, readonly) UIEventType type


議論

このプロパティによって返された UIEventType 定数は、例えば、それがタッチまたはモーションイベントであるかどうか、このイベントの汎用タイプを示します。


利用可能

iOS 3.0 以降で利用可能。


以下も見よ

subtype





subtype プロパティ


イベントのサブタイプを返します。(読み取り専用)


宣言

<< SWIFT >>

var subtype: UIEventSubtype { get }


<< OBJECTIVE-C >>

@property(nonatomic, readonly) UIEventSubtype subtype


議論

このプロパティによって返される UIEventSubtype 定数は、type プロパティから返される汎用タイプに関連したイベントのサブタイプを示します。


利用可能

iOS 3.0 以降で利用可能。





ジェスチャ認識機でタッチを取得


- touchesForGestureRecognizer:


指定されたジェスチャー認識機に配信されているタッチオブジェクトを返します。


宣言

<< SWIFT >>

func touchesForGestureRecognizer(_ gesture: UIGestureRecognizer) -> Set<UITouch>?


<< OBJECTIVE-C >>

- (NSSet<UITouch *> *)touchesForGestureRecognizer:(UIGestureRecognizer *)gesture


パラメーター

gesture抽象基本クラス UIGestureRecognizer のサブクラスのインスタンス。このジェスチャ認識機オブジェクトは、タッチがそのビューとそのサブビューにヒットテストされたのを受信するためのビューに接続する必要があります。

戻り値

受信者によって表されるイベントの指定ジェスチャ認識機に配信される、タッチを表す UITouch オブジェクトのセット。


利用可能

iOS 3.2 以降で利用可能。





データ型


UIEventType


イベントの汎用タイプを指定します


宣言

<< SWIFT >>

enum UIEventType : Int {
    case Touches
    case Motion
    case RemoteControl
    case Presses
}


<< OBJECTIVE-C >>

typedef enum {
   UIEventTypeTouches,
   UIEventTypeMotion,
   UIEventTypeRemoteControl,
   UIEventTypePresses
} UIEventType;


定数

  • UIEventTypeTouches
  • イベントは、スクリーン上のタッチに関連しています。


    iOS 3.0 以降で利用可能。


  • UIEventTypeMotion
  • イベントは、ユーザがそれをシェイクした場合のような装置のモーションに関連しています。


    iOS 3.0 以降で利用可能。


  • UIEventTypeRemoteControl
  • イベントは、リモートコントロールイベントです。リモート・コントロール・イベントは、デバイス上でマルチメディアを制御する目的のために、ヘッドセットまたは外部アクセサリから受信したコマンドとして発信します。


    iOS 4.0 以降で利用可能。


  • UIEventTypePresses
  • イベントは、実物のボタンを押す事に関連しています。


    iOS 9.0 以降で利用可能。


    議論

    type プロパティからイベントの型を取得できます。さらにイベントを識別するためには、subtype プロパティから取得した、そのサブタイプも決定する必要がある場合があります。


    Import 文

    << OBJECTIVE-C >>

    @import UIKit;


    << SWIFT >>

    import UIKit


    利用可能

    iOS 3.0 以降で利用可能。





    UIEventSubtype


    その汎用型に関連したイベントのサブタイプを指定します。


    宣言

    << SWIFT >>

    enum UIEventSubtype : Int {
        case None
        case MotionShake
        case RemoteControlPlay
        case RemoteControlPause
        case RemoteControlStop
        case RemoteControlTogglePlayPause
        case RemoteControlNextTrack
        case RemoteControlPreviousTrack
        case RemoteControlBeginSeekingBackward
        case RemoteControlEndSeekingBackward
        case RemoteControlBeginSeekingForward
        case RemoteControlEndSeekingForward
    }


    << OBJECTIVE-C >>

    typedef enum {
       UIEventSubtypeNone                              = 0,
       
       UIEventSubtypeMotionShake                       = 1,
       
       UIEventSubtypeRemoteControlPlay                 = 100,
       UIEventSubtypeRemoteControlPause                = 101,
       UIEventSubtypeRemoteControlStop                 = 102,
       UIEventSubtypeRemoteControlTogglePlayPause      = 103,
       UIEventSubtypeRemoteControlNextTrack            = 104,
       UIEventSubtypeRemoteControlPreviousTrack        = 105,
       UIEventSubtypeRemoteControlBeginSeekingBackward = 106,
       UIEventSubtypeRemoteControlEndSeekingBackward   = 107,
       UIEventSubtypeRemoteControlBeginSeekingForward  = 108,
       UIEventSubtypeRemoteControlEndSeekingForward    = 109,
    } UIEventSubtype;


    定数

  • UIEventSubtypeNone
  • イベントにはサブタイプがありません。これは、UIEventTypeTouches の汎用型のイベントのサブタイプです。


    iOS 3.0 以降で利用可能。


  • UIEventSubtypeMotionShake
  • イベントは、デバイスをユーザーがシェイクする事に関連しています。これは、UIEventTypeMotion の汎用イベント型のサブタイプです。


    iOS 3.0 で利用可能。


  • UIEventSubtypeRemoteControlPlay
  • オーディオやビデオを再生するためのリモートコントロールイベント。これは、UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlPause
  • オーディオやビデオを一時停止するためのリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlStop
  • 再生中のオーディオやビデオを停止するためのリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlTogglePlayPause
  • 再生と一時停止の間でオーディオやビデオをトグルするためのリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlNextTrack
  • オーディオまたはビデオの次のトラックにスキップするためのリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlPreviousTrack
  • オーディオまたはビデオの前のトラックにスキップするためのリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlBeginSeekingBackward
  • オーディオやビデオの媒体を介した後方検索を開始するリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlEndSeekingBackward
  • オーディオやビデオの媒体を介した後方検索を終了するリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlBeginSeekingForward
  • オーディオやビデオの媒体を介した前方検索を開始するリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


  • UIEventSubtypeRemoteControlEndSeekingForward
  • オーディオやビデオの媒体を介した前方検索を終了するリモートコントロールイベント。これは、 UIEventTypeRemoteControl の汎用イベント型のサブタイプです。


    iOS 4.0 で利用可能。


    議論

    subtype プロパティからイベントのサブタイプを取得できます。


    Import 文

    << OBJECTIVE-C >>

    @import UIKit;


    << SWIFT >>

    import UIKit


    利用可能

    iOS 3.0 以降で利用可能。





    次の章
    目次
    Xcode 9 の新機能
    NSObject(class)

  • UIEvent
  • 概観
  • タスク
  • イベントのタッチを取得
  • allTouches
    touchesForView:
    touchesForWindow:
  • イベント属性の取得
  • timestamp プロパティ
  • イベントの種類を取得
  • type プロパティ
    subtype プロパティ
  • ジェスチャ認識機でタッチを取得
  • touchesForGestureRecognizer:
  • 定数
  • UIEventType
    UIEventSubtype
    文書改定履歴












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)












    トップへ(UIEvent)