是否可以让all pointer events
中特定透明区域上的WebView
(触摸,点击,...)传递到底层的本机响应组件?
WebView
的位置绝对正确,涵盖了完整的react native UI,主要由“全屏” WebGL图形上下文组成。
到目前为止我所做的:
pointer-events: none
内容的白色区域(包括body
)内的所有元素设置CSS WebView
pointer-events: all
内容中的所有紫色HTML元素设置WebView
,以使其保持功能WebViews
属性pointerEvents="none"
这是React Native应用中的样子:
<!-- ... -->
<View
style={{
position: 'absolute',
top: 0,
left: 0,
width: '100%',
height: '100%',
backgroundColor: 'transparent',
}}
>
<WebView
source={{ uri: 'www.example.com' }}
style={{ backgroundColor: 'transparent' }}
pointerEvents="none"
/>
</View>
<!-- ... -->
如果我还为周围的pointerEvents="none"
设置属性View
,则点击将通过,但紫色部分也会通过,因此WebView
在以下位置将不再起作用全部。
我见过Create a hole in react-native webview for touch events,但我认为提到的解决方案实际上并不可行,因为它依赖于将事件数据从WebView
手动分发到基础应用程序。
我的基本WebGL图形显示了一个3d模型,该模型允许许多不同的交互方式,我认为我无法手动分派并正确处理所有需要的事件...