autofocusをサポートしています。この機能により、フォーカスの検出と復元が実現され、複数回アクセスしたときのフォーカスが記憶されます。TVFocusGuideでは、トラップtrappingやフォーカスリダイレクトfocus redirectionもサポートされ、アプリ内でのフォーカス動作をカスタマイズできます。
このコンポーネントを使用すると、フォーカス可能なコントロールがほかのコントロールと一列に並んでいなくても、フォーカス可能な各コントロールに確実に移動できるようになります。RNTesterには、このコンポーネントの2つの異なる使用方法を示す例が含まれています。
次のアニメーションは、
TVFocusGuideViewを使用した場合のナビゲーション制御を示しています。
フォーカス処理を改善する方法の詳細については、Revolutionizing Focus Management in TV Applications with React Native(英語のみ)を参照してください。
例
リファレンス
プロパティ
autoFocus
trueの場合、TVFocusGuideが自動的にフォーカスを管理します。TVFocusGuideは、初回のアクセス時にフォーカス可能な最初の子にフォーカスをリダイレクトします。また、このプロパティは最後にフォーカスを持っていた子を記憶し、次回のアクセス時にその子にフォーカスをリダイレクトします。destinationsプロパティが使用されている場合は、このプロパティよりも優先されます。
trapFocus*(Up、Down、Left、Right)
指定の方向について、フォーカスがコンテナから外れないようにします。destinations
FocusGuideViewのフォーカスの移動先として登録するコンポーネントの配列です。メソッド
setDestinations
既知の問題
setDestinationsがマウントされていない場合、コールバックは更新に失敗します。代わりにdestinationsプロパティを使用するか、setDestinationsを呼び出す前にsetTimeoutを使用して待ち時間を追加してください。- 厳密な型チェックが有効な.tsxに
TVFocusGuideをインポートすると、Property children does not exist on typeというエラーで失敗します。このエラーを回避するために、アプリでは、コンポーネントを使用する箇所の前に{/* @ts-expect-error */}または{/* @ts-ignore */}を追加できます。

