#react-native
#react-native
Вопрос:
Я использую overly на своем экране. В overly есть textinput и кнопка, а в кнопке есть функция onPress=saveInput() . Я хочу выполнить то же действие, но при чрезмерном отклонении. т.Е. Я хочу вызвать метод saveInput() при чрезмерном отклонении. Есть ли способ, которым я могу это сделать? Вот фрагмент
<Overlay
overlayStyle={...}
isVisible={this.state.isprice}
onBackdropPress={...}>
<ScrollView>
<>
<View>
<TextInput
value={this.state.price}
keyboardType={"phone-pad"}
onChangeText={text => this.setState({ price: text })}
onFocus={() => {
this.setState({ price: '' })
}}
/>
<View>
<Button
onPress={() => {
this.saveInput()
}}
title="Add"
/>
</View>
</View>
</>
</ScrollView>
</Overlay>
Ответ №1:
Вы можете вызвать saveinput inner onbackdropPress или где вы обновляете this.state.isprice
<Overlay
overlayStyle={...}
isVisible={this.state.isprice}
onBackdropPress={this.saveInput}>
<ScrollView>
<>
<View>
<TextInput
value={this.state.price}
keyboardType={"phone-pad"}
onChangeText={text => this.setState({ price: text })}
onFocus={() => {
this.setState({ price: '' })
}}
/>
<View>
<Button
onPress={() => {
this.saveInput()
}}
title="Add"
/>
<Button onPress={() => {
this.setState({isPrice: false});
this.saveInput()
}} title='Close Overlay'/>
</View>
</View>
</>
</ScrollView>
</Overlay>