如果我使用按钮而不是它,则无法执行 TouchableOpacity 或 TouchableHighlight 的 onPress 它可以工作我做错了什么?

Unable to execute onPress of TouchableOpacity or TouchableHighlight if I use button instead it works what am I doing wrong?

我创建了一个 MyAlertBox.js 文件。使用如下所示进行测试。

render() {
       return (
               <MyAlertBox title="Testing" message="Worked?" show={true} />
       );
     }

里面 Home.js。 MyAlertBox 如下所示。

export default class MyAlertBox extends Component {
    constructor(props) {
        super(props);
        this.state = {
            Alert_Visibility: props.show,
            showme: props.show
        };
    }

    ok_Button (){
        this.setState({showme:false,Alert_Visibility:false});
    }

    render() {
        if (!this.state.Alert_Visibility)
            return (<View><Text>Suppose to be alertbox.</Text></View>);
        else
            return (
                <View style={styles.MainContainer}>
                    <Modal
                        visible={this.state.Alert_Visibility}
                        transparent={true}
                        animationType={"fade"}
                        onRequestClose={() => { console.warn('closing.');this.Show_Custom_Alert(false)}} >

                        <View style={{ flex: 1, alignItems: 'center', justifyContent: 'center' }}>
                            <View style={styles.Alert_Main_View}>
                                <Text style={styles.Alert_Title}>{this.props.title}</Text>
                                <View style={{ width: '100%', height: 2, backgroundColor: '#fff' }} />
                                <Text style={styles.Alert_Message}> {this.props.message} </Text>
                                <View style={{ width: '100%', height: 1, backgroundColor: '#fff' }} />
                                <View style={{ flexDirection: 'row', height: '30%' }}>
                                    <TouchableOpacity
                                        style={styles.buttonStyle}
                                        onPress={this.ok_Button.bind(this)}
                                        activeOpacity={0.7}>
                                        <Text style={styles.TextStyle}> OK </Text>
                                    </TouchableOpacity>
                                    {/* <Button title="OK" onPress={this.ok_Button.bind(this)} /> */}
                                    <View style={{ width: 1, height: '100%', backgroundColor: '#fff' }} />
                                    <TouchableHighlight
                                        style={styles.buttonStyle}
                                        onPress={this.ok_Button.bind(this)}
                                        activeOpacity={0.7} >
                                        <Text style={styles.TextStyle}> CANCEL </Text>
                                    </TouchableHighlight>
                                    {/* <Button title="CANCEL" onPress={this.ok_Button.bind(this)} /> */}
                                </View>
                            </View>
                        </View>
                    </Modal>
                </View>
            );
    }
}

此处显示警告框但无法单击 'OK' 或 'cancel' 如果我将 TouchableOpacity 或 TouchableHightlight 更改为按钮,它会被调用并且工作正常。我做错了什么?

请指教。谢谢

确保从正确的包中导入 Touchable。我从“react-native-gesture-handler”导入了 class,它应该是“react-native”。代码没问题