首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TouchableOpacity onPress()不使用react-native-modal

TouchableOpacity onPress()不使用react-native-modal
EN

Stack Overflow用户
提问于 2019-11-21 02:03:53
回答 1查看 3.8K关注 0票数 6

我正在尝试让TouchableOpacity与react-native-modal一起工作。当我按下按钮时,什么也没有发生。

这是我的代码,在按下按钮时,没有按下动画,也没有出现警告:

代码语言:javascript
复制
<Modal
  isVisible={this.state.modalVisible}
  onBackdropPress={() => this.setState({ modalVisible: false })}
  deviceWidth={Dimensions.get('window').width}
  deviceHeight={Dimensions.get('window').height}
  backdropColor={'rgba(29, 36, 40, 0.5)'}>
  <View style={styles.modal}>
    <Text style={styles.modalTitle}>Test modal</Text>
    <View style={modalButtons}>
      <TouchableOpacity onPress={() => alert('hello!')}><Text style={styles.modalButton}>Test</Text></TouchableOpacity>
      <TouchableOpacity onPress={() => this.setState({ modalVisible: false })}><Text style={styles.modalButton}>Close</Text></TouchableOpacity>
    </View>
  </View>
</Modal>

我从react-native导入TouchableOpacity,而不是从react-native-gesture handler导入(一个解决方案提到了这一点;它为我做的所有事情就是防止按钮不可见)。

编辑:我已经将范围缩小到按钮周围的视图。当我删除以下样式时,它可以正常工作:

代码语言:javascript
复制
  modalButtons: {
    flex: 1,
    flexDirection: 'row',
    justifyContent: 'space-between',
    marginBottom: 30,
  },

有没有办法让这种flex保持工作呢?我想让按钮并排显示。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-12-05 23:16:37

我也有同样的问题。检查您的TouchableOpacity是从"react-native"模块导入的,而不是从任何其他模块导入的。(我的是在react-native-gesture-handler。)

票数 29
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58960723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档