React native 如何在React Native中关闭选择器?
我正在使用本机的基选择器。 我想手动关闭它,但找不到此的API。 组件不包含任何方法或道具,如React native 如何在React Native中关闭选择器?,react-native,native-base,React Native,Native Base,我正在使用本机的基选择器。 我想手动关闭它,但找不到此的API。 组件不包含任何方法或道具,如visible 如何关闭/隐藏选择器?a):您可以简单地基于此渲染它。state.isPickerVisible,或b):将其包装在具有可见道具的模式中 对于关闭选择器,如果您选择将其包装在一个模式中,则使该模式占据整个屏幕,并使用无反馈触摸来处理选择器外部的点击:this.cancelPressed()}>其中cancel pressed切换为isPickerVisible {this.state.i
visible
如何关闭/隐藏选择器?a):您可以简单地基于此渲染它。state.isPickerVisible,或b):将其包装在具有可见道具的模式中
对于关闭选择器,如果您选择将其包装在一个模式中,则使该模式占据整个屏幕,并使用无反馈触摸来处理选择器外部的点击:this.cancelPressed()}>
其中cancel pressed切换为isPickerVisible
{this.state.isPickerVisible &&
<Picker
selectedValue={this.state.tempGender}
onValueChange={tempGender => this.setState({tempGender})}
>
<Picker.Item label="Female" value="female" />
<Picker.Item label="Male" value="male" />
<Picker.Item label="Other" value="other" />
</Picker>}
{this.state.isPickerVisible&&
this.setState({tempGender})
>
}
如果选择将其包装在模态中,则可以获得一些动画选项
import {Modal, Picker ... etc...} from 'react-native'
<Modal
animationType="slide"
transparent={true}
visible={this.state.isPickerVisible}
>
<TouchableWithoutFeedback onPress={() => this.cancelPressed()}>
<View>
<Picker
selectedValue={this.state.tempGender}
onValueChange={tempGender => this.setState({tempGender})}
>
<Picker.Item label="Female" value="female" />
<Picker.Item label="Male" value="male" />
<Picker.Item label="Other" value="other" />
</Picker>
</View>
</TouchableWithoutFeedback>
</Modal>
从'react native'导入{Modal,Picker…等..}
this.cancelPressed()}>
this.setState({tempGender})
>
在my案例中,使用renderHeader
函数和backAction
参数就足够了
<Picker
renderHeader={backAction => (
<Button onPress={() => {
backAction();
someFunction();
}}
)}
/>
(
{
反作用();
someFunction();
}}
)}
/>
看起来它只有默认的关闭动作,你应该看看它的代码,看看它调用了什么方法来关闭pickerI用this.state.isPickerVisible尝试过的pickerI。我不喜欢视觉行为如果你想要动画,试着将它包装在一个模式中,让它滑入滑出,或者淡入淡出。