从React Native中的模态打开模态

时间:2016-01-28 04:46:34

标签: react-native

我试图从位于另一个模态中的Modal打开TouchHighlight。基本上应该发生的是,父主TouchHighlight中的Modal应该在其上打开另一个辅助Modal,而不关闭主Modal

但我收到以下错误。

Warning: Attempt to present <RCTModalHostViewController: 0x7fc408fb2460>  on <RCTWrapperViewController: 0x7fc40b2c1ac0> which is already presenting (null)

如何正确地做到这一点?

2 个答案:

答案 0 :(得分:15)

好的找到了方法。辅助Modal代码应位于主Modal内。这解决了这个问题。

<Modal
        animationType='fade'
        transparent={true}
        visible={this.state.modalVisibility}>

    <Modal
            animationType='fade'
            transparent={true}
            visible={this.state.secondaryModalVisibility}>

        <View style={[styles.modalContainer, modalBackgroundStyle]}>
            <View style={styles.innerContainer}>

                {this.secondaryContent()}

            </View>
        </View>
    </Modal>

    <View style={[styles.modalContainer, modalBackgroundStyle]}>
        <View style={styles.innerContainer}>

            {this.mainContent()}

        </View>
    </View>
</Modal>

答案 1 :(得分:0)

我在一个项目中遇到了类似的问题,因为它变得越来越大,在越来越多的屏幕和容器上创建了更多的模态,因此我创建了 this package 来动态控制整个应用程序中的所有模态