javascript - 绝对位置下的 Touchables 在 IOS 上不起作用,但在 Android 上运行良好

标签 javascript reactjs react-native

我有包含一些可触摸的 ScrollView,在下面我有包含通知的单独组件。

<ScrollView style={styles.scroll}>
   //some touchables
</ScrollView>
<Notifications />

通知的高度为 50px 并且可以拖动,就像 android 或 ios 上的通知一样,当您将它们下拉时,它们会越过 ScrollView ,当您向上滑动它们时, ScrollView 会再次出现。

问题是,当通知不在向下位置时,在 android(真实设备)上我可以点击我的 ScrollView 中的 touchables 并且一切正常,但是在 ios 模拟器上,你可以滑动通知但你不能点击当通知处于向上位置时 ScrollView 内的可触摸对象。

我尝试将 scrollview zIndex 设置为 1,然后我可以点击 touchables,但是当我向下滑动通知时,它们会在 scrollview 下方。

谁能给我一些解决方案?

scroll: {
    width: '100%',
    paddingHorizontal: '2%',
    marginTop: 50,
  },

通知容器如下所示:

panelContainer: {
    position: 'absolute',
    top: 0,
    bottom: 0,
    left: 0,
    right: 0,
  },

最佳答案

尽管我花了几个小时试图为此找到解决方案,但我想我是在发布这个问题后才找到它的。

解决方案是将 pointerEvents="box-none" 添加到绝对定位的 View 中。现在它可以在 Android 和 IOS 上正常运行。

关于javascript - 绝对位置下的 Touchables 在 IOS 上不起作用,但在 Android 上运行良好,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59598633/

相关文章:

javascript - 使用 native react 发送电子邮件(带附件,android)

javascript - react js : How to open a local path via HTML button on webpage

reactjs - react : TypeError: Cannot read property 'addHook' of null

react-native 中的 CSS 动画和转换

javascript - react 可重用组件错误(es6)

reactjs - 下拉菜单翻转位置问题。 React-Select + Material-UI Popper

react-native - react native 错误: Attempting to run JS driven animation on animated node that has been moved to "native" earlier by starting an animation

javascript - 使用 JQuery 选项卡作为主导航

javascript - 如果该值未定义, typescript 是否有返回值或抛出异常的语法糖?

javascript - 在 <tr> 标签中调用 JavaScript 函数