アクション可能なコンポーネントのプロパティ
アクション可能なコンポーネントは、タッチ、カーソル、キーボードのイベントから直接入力を受け取ることができます。このドキュメントでは、アクション可能なすべてのコンポーネントに共通のプロパティについて説明します。
アクション可能なコンポーネント
アクション可能なコンポーネントには以下があります。
プロパティ
すべてのアクション可能なコンポーネントには、次のプロパティがあります。
- すべての基本コンポーネントプロパティ。
- アクション可能なコンポーネント固有のプロパティ。以下の表に一覧を示します。列の意味を参照する。
プロパティ | 型 | デフォルト | スタイル設定 | 動的 | 説明 |
---|---|---|---|---|---|
onFocus | コマンドの配列 | [] | × | × | コンポーネントがフォーカスを受け取ったときに実行するコマンドです。 |
onBlur | コマンドの配列 | [] | × | × | コンポーネントがフォーカスを失ったときに実行するコマンドです。 |
handleKeyDown | キーボードハンドラーの配列 | [] | × | × | コンポーネントがキーの押下を受け付けたときに評価するキーボードハンドラーです。 |
handleKeyUp | キーボードハンドラーの配列 | [] | × | × | コンポーネントがキーの解放を受け取ったときに評価するキーボードハンドラーです。 |
アクション可能なコンポーネントでは、event.sourceプロパティやevent.targetプロパティのcomponent
の定義にプロパティが追加されることはありません。
onFocus
コンポーネントがフォーカスを受け取ったときに実行するコマンドです。
disabled状態がtrueに設定されているコンポーネントはフォーカスを取得できないため、onFocus
イベントハンドラーは実行されません。フォーカスがあるコンポーネントのdisabled状態がtrueに設定された場合、そのコンポーネントはフォーカスを失い、onBlurイベントハンドラーが実行されます。
inheritParentState
プロパティがtrueに設定されているコンポーネントはフォーカスを取得できないため、onFocus
イベントハンドラーは実行されません。
生成されるイベントの形式は次のようになります。
"event": {
"source": {
"type": "COMPONENT_TYPE", // コンポーネントの型(Pager、TouchWrapperなど)
"handler": "Focus",
... // コンポーネントのソースプロパティ
}
}
event.source.type
プロパティには、コンポーネントの名前(TouchWrapper
、ScrollView
など)が設定されます。event.source
のプロパティの詳細については、イベントソースを参照してください。
onFocus
イベントハンドラーは、コンポーネントのデータバインディングコンテキストで高速モードで実行されます。
onBlur
コンポーネントがフォーカスを失ったときに実行するコマンドです。
disabled状態がtrueに設定されているコンポーネントはフォーカスを取得できません。既にフォーカスがあるコンポーネントのdisabled状態がtrueに変更された場合、そのコンポーネントはフォーカスを失い、onBlur
イベントハンドラーが実行されます。
inheritParentState
プロパティがtrueに設定されているコンポーネントはフォーカスを取得できないため、onBlur
イベントハンドラーは実行されません。
生成されるイベントの形式は次のとおりです。
"event": {
"source": {
"type": "COMPONENT_TYPE", // コンポーネントの型(Pager、TouchWrapperなど)
"handler": "Blur",
... // コンポーネントのソースプロパティ
}
}
event.source.type
プロパティには、コンポーネントの名前(TouchWrapper
、ScrollView
など)が設定されます。event.source
のプロパティの詳細については、イベントソースを参照してください。
onBlur
イベントハンドラーは、コンポーネントのデータバインディングコンテキストで高速モードで実行されます。
handleKeyDown
ユーザーがキーボードのキーを押したとき、またはキーがオートリピートされたときに実行するキーボードイベントハンドラーの配列です。keyDown
イベントは、文字の入力時だけでなく、可能な場合に毎回生成されます。たとえば、Shiftキーを押すとkeyDown
イベントが生成されます。
生成されるイベントの形式は次のとおりです。
"event": {
"source": {
"type": "COMPONENT_TYPE", // コンポーネントの型(Pager、TouchWrapperなど)
"handler": "KeyDown",
... // コンポーネントのソースプロパティ
},
"keyboard": {
"altKey": Boolean
"code": String,
"ctrlKey": Boolean,
"key": String,
"metaKey": Boolean,
"repeat": Boolean,
"shiftKey": Boolean
}
}
event.source.type
プロパティには、コンポーネントの名前(TouchWrapper
、ScrollView
など)が設定されます。event.source
のプロパティの詳細については、イベントソースを参照してください。
keyboard
プロパティの詳細については、キーボードイベントハンドラーを参照してください。
handleKeyDown
イベントハンドラーは、コンポーネントのデータバインディングコンテキストで通常モードで実行されます。
handleKeyUp
キーボードのキーが解放されたときに実行するキーボードイベントハンドラーの配列です。keyUp
イベントは、文字の入力時だけでなく、可能な場合に毎回生成されます。たとえば、キーボードのShiftキーが解放されるとkeyUpイベントが生成されます。
生成されるイベントの形式は次のとおりです。
"event": {
"source": {
"type": "COMPONENT_TYPE", // コンポーネントの型(Pager、TouchWrapperなど)
"handler": "KeyUp",
... // コンポーネントのソースプロパティ
},
"keyboard": {
"altKey": Boolean
"code": String,
"ctrlKey": Boolean,
"key": String,
"metaKey": Boolean,
"repeat": Boolean,
"shiftKey": Boolean
}
}
event.source.type
プロパティには、コンポーネントの名前(TouchWrapper
、ScrollView
など)が設定されます。event.source
のプロパティの詳細については、イベントソースを参照してください。
keyboard
プロパティの詳細については、キーボードイベントハンドラーを参照してください。
handleKeyUp
イベントハンドラーは、コンポーネントのデータバインディングコンテキストで通常モードで実行されます。
アクション可能なコンポーネントイベントハンドラーの例
以下は、onFocus
ハンドラーとonBlur
ハンドラーの例を示しています。ドキュメントには、TouchWrapper
コンポーネントのSequence
と2つのボタンが表示されます。各リスト項目は、onFocus
とonBlur
でコマンドを実行してバインド変数を更新し、フォーカスを取得または失ったコンポーネントを追跡します。ドキュメントのonMount
では、リストの最初の項目にフォーカスを設定します。
キーボード付きのデバイスで、TabキーとShift+Tabキーを使用してフォーカスを変更し、onFocus
ハンドラーとonBlur
ハンドラーの結果を確認してください。
関連トピック
- 基本コンポーネントのプロパティ
- EditText
- FlexSequence
- GridSequence
- Pager
- ScrollView
- Sequence
- TouchWrapper
- VectorGraphic
最終更新日: 2025 年 09 月 30 日