React Native是否支持“Full Keyboard Access”?

0kjbasz6  于 2023-08-07  发布在  React
关注(0)|答案(1)|浏览(130)

有没有一种方法可以告诉用户什么时候使用外部键盘导航到一个按钮?即启用辅助功能选项Full Keyboard Access,并将外部蓝牙键盘连接到iOS设备。
我面临的焦点指示器不清晰可见的问题,所以我想改变按钮的样式(改变边框颜色/宽度)时,这种情况发生。
我想使用onFocus,但它没有被调用。

  1. const [isFocused, setIsFocused] = React.useState(false);
  2. return (
  3. <TouchableWithoutFeedback
  4. onPress={props.onPress}
  5. accessibilityLabel={props.accessibilityLabel}
  6. accessibilityRole="button"
  7. onFocus={() => setIsFocused(true)}
  8. onBlur={() => setIsFocused(false)}
  9. >
  10. <View
  11. style={
  12. isFocused
  13. ? styles.buttonPrimaryFocus
  14. : styles.buttonPrimary
  15. }
  16. >
  17. <Text>
  18. {props.label}
  19. </Text>
  20. </View>
  21. </View>
  22. </TouchableWithoutFeedback>

字符串

8nuwlpux

8nuwlpux1#

不幸的是,ReactNative不提供默认解决方案。我希望这个解决方案适合你:https://www.npmjs.com/package/react-native-external-keyboard

  1. import {ExternalKeyboardView} from 'react-native-external-keyboard';
  2. <ExternalKeyboardView
  3. onKeyDownPress={(e) => console.log(e)}
  4. onKeyUpPress={(e) => console.log(e)}
  5. onFocusChange={(e) => console.log(e.nativeEvent.isFocused)}
  6. canBeFocused
  7. >

字符串
它与新老拱门兼容。

相关问题