VideoCardをフォーカス可能かつ押下可能にする方法
VideoCardの操作とナビゲーションを可能にするには、VideoCardをフォーカス可能かつ押下可能にする必要があります。それには、TouchableOpacityというコンポーネントを使用します。VideoCard.tsxを開き、「react-native」からTouchableOpacityをインポートします。
- View要素をTouchableOpacityに置き換えます。
styleプロパティはそのままにします。
onPress()ハンドラーを設定する必要があります。
- VideoCardに
pressFunctionという新しいプロパティを渡し、型としてFunctionを指定します。 onPressプロパティをTouchableOpacityに追加し、新しいpressFunctionを呼び出すようにその値を設定します。
onFocus()プロパティとonBlur()プロパティを追加します。
- reactから
useStateをインポートし、focusedの状態とsetFocusedの関数で初期化します。 focusedの値をfalseに初期化します。
- TouchableOpacityに
onFocusプロパティを追加し、値をtrueにしてsetFocused()関数を呼び出すように設定します。 - TouchableOpacityに
onBlurプロパティを追加し、値をfalseにしてsetFocused()関数を呼び出すように設定します。
videoCardContainerを以下のように変更します。- focusedとunfocusedという2つの新しいスタイルプロパティを作成し、それぞれのスタイルを以下のように設定します。
- TouchableOpacityを変更し、focusedの値に応じて新しいスタイルプロパティを追加します(trueの場合はfocused、falseの場合はunfocused)。
VideoCard.tsxのコードは次のようになります。
- アプリを更新します。これで、以下のビデオに示すように、D-Padのキー/キーボードの矢印キーのいずれかを押すことでビデオカードにフォーカスを移動できます。

ビデオカードのフォーカス

