将宽度和高度设置为React-native模式

问题描述 投票:23回答:2

我无法使用style属性配置模态高度和宽度。有没有其他方法来设置模态高度和宽度?

 <Modal style={{height: 300, width: 300}}
        visible={this.state.isVisible}
        onRequestClose={this.closeModal}>
 </Modal>

上面的代码不起作用。

react-native modal-dialog
2个回答
80
投票

根据Modal文档,没有设置style道具。

您可以尝试在<View>中设置<Modal>尺寸:

<Modal transparent={true}
       visible={this.state.isVisible}
       onRequestClose={this.closeModal}>
  <View style={{
          flex: 1,
          flexDirection: 'column',
          justifyContent: 'center',
          alignItems: 'center'}}>
    <View style={{
            width: 300,
            height: 300}}>
      ...
    </View>
  </View>
</Modal>

0
投票

Modal文档中没有提到它,但它有一个样式属性。

以下适用于我。

<Modal
    style={styles.modalContent}
    isVisible={this.state.isVisible}
    onBackdropPress={this.closeModal}
>
    <Component {...componentProps} />
</Modal>

const styles = StyleSheet.create({
    modalContent: {
        justifyContent: 'center',
        alignItems: 'center',
        margin: 0
    },
});
© www.soinside.com 2019 - 2024. All rights reserved.