Как мне установить фокус на первый (или любой заданный) компонент TouchableHighlight внутри модального окна, когда он открыт?
Я пользуюсь D-pad / kayboard / TV Remote
Давайте воспользуемся фрагментом модального примера реактивной документации:
<View style={{marginTop: 22}}>
<Modal
animationType="slide"
transparent={false}
visible={this.state.modalVisible}
onRequestClose={() => {
Alert.alert('Modal has been closed.');
}}>
<View style={{marginTop: 22}}>
<View>
<TouchableHighlight>
<Text>Button 1</Text>
</TouchableHighlight>
<TouchableHighlight>
<Text>Button 2</Text>
</TouchableHighlight>
<TouchableHighlight
onPress={() => {
this.setModalVisible(!this.state.modalVisible);
}}>
<Text>Hide Modal</Text>
</TouchableHighlight>
</View>
</View>
</Modal>
<TouchableHighlight
onPress={() => {
this.setModalVisible(true);
}}>
<Text>Show Modal</Text>
</TouchableHighlight>
</View>
Навигация с помощью D-pad работает, но когда модал открыт, первый TouchableHighlight (кнопка 1) не сфокусирован, фокус остается на кнопке «Показать модал»
Или как программно установить фокус на TouchableHighlight «Кнопка 2»?
TextInput, например, имеет автофокус, но TouchableHighlight нет, если мы используем только сенсорные компоненты внутри модального, я не знаю, как их автофокусировать, или неявно установить его
С наилучшими пожеланиями