React native 单选按钮ON按下isn';t工作在本地纸上

React native 单选按钮ON按下isn';t工作在本地纸上,react-native,react-native-paper,React Native,React Native Paper,我有两个径向按钮,我用的是react原生纸。在onPress功能下,我有两个按钮本身和它们旁边的文本,但是只有当我按下文本时功能才会执行,而不是当我按下按钮时。当我按下按钮时,它会高亮显示并显示它已按下,但不会执行onPress <View style={[s.profile_gender_row]}> <Text onPress={() => {this.onDataChange('gender', 'F')}}>Female</Text> /

我有两个径向按钮,我用的是react原生纸。在onPress功能下,我有两个按钮本身和它们旁边的文本,但是只有当我按下文本时功能才会执行,而不是当我按下按钮时。当我按下按钮时,它会高亮显示并显示它已按下,但不会执行onPress

<View style={[s.profile_gender_row]}>
    <Text onPress={() => {this.onDataChange('gender', 'F')}}>Female</Text> // this works just fine
    <RadioButton
        value="F"
        status={this.props.gender === 'F' ? 'checked' : 'unchecked'}
        onPress={() => {this.onDataChange('gender', 'F')}} // this does not work
    />
</View>
<View style={[s.profile_gender_row]}>
    <Text onPress={() => {this.onDataChange('gender', 'M')}}>Male</Text>
    <RadioButton
        value="M"
        status={this.props.gender === 'M' ? 'checked' : 'unchecked'}
        onPress={() => {this.onDataChange('gender', 'M')}}
    />
</View>

{this.onDataChange('gender','F')}>Female//这很好用
{this.onDataChange('gender','F')}//这不起作用
/>
{this.onDataChange('gender','M')}>男性
{this.onDataChange('gender','M')}
/>

没有任何错误消息,我只是对它为什么不执行感到困惑。

不幸的是,这听起来像是2.16.0版的一个bug,目前是最新版本。它应该在3.xx中修复,因此您可以升级到
3.0.0-alpha.8
进行修复。

不幸的是,这听起来像是当前最新版本2.16.0的一个bug。它应该在3.xx中修复,这样您就可以升级到
3.0.0-alpha.8
进行修复。

您应该在视图中包装文本(和/或任何其他同级组件),并在可触摸(如TouchableHighlight或TouchableOpacity)中包装该视图,并将onPress道具添加到该容器中,然后你可以控制触摸屏的填充place@mAhMoUdDaFeR谢谢你的评论!但是它不起作用:'(虽然我喜欢这个主意,但我会在主应用程序中保留它。你不需要用
{}
来包装函数调用。只需这样调用onPress:
{()=>this.onDataChange('gender','M')}
,它应该work@darkknight不起作用:(我将onPress更改为
onPress={()=>this.onDataChange('gender',M')}
即使在React Native Paper提供的示例零食上,这也不适用于我。我在这里报告过:您应该将文本(和/或任何其他同级组件)包装在视图中,并将该视图包装在可触摸(如TouchableHighlight或TouchableOpacity)中并将onPress道具添加到该容器中,然后您可以控制可触摸面板的填充place@mAhMoUdDaFeR谢谢你的评论!但是它不起作用:'(虽然我喜欢这个主意,但我会在主应用程序中保留它。你不需要用
{}
包装函数调用。只需按以下方式调用onPress:
{()=>this.onDataChange('gender','M')}
它应该work@darkknight不起作用:(我将onPress更改为
onPress={()=>this.onDataChange('gender','M')}
这对我也不起作用,即使是React Native Paper提供的小吃样本。我在这里报告了它: