首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >TouchableOpacity内部的ScrollView

TouchableOpacity内部的ScrollView
EN

Stack Overflow用户
提问于 2017-03-26 14:10:11
回答 2查看 1.1K关注 0票数 10

我正在尝试在TouchableOpacity组件中设置一个水平ScrollView (出于必要的原因)。但是,TouchableOpacity会覆盖任何水平滚动功能,并执行onPress,即使是水平触摸移动也是如此。

有没有办法让ScrollView的触摸事件优先于父Touchable?这样用户就可以滚动组件并按下它。下面是与我正在尝试实现的代码片段类似的代码片段。

代码语言:javascript
复制
<TouchableOpacity
    onPress={this._onPress}>
    <View>
        ... Some view I want static ...
    </View>
    <ScrollView
        horizontal={true}>
        ... A bunch of components I want scrollable ...
    </ScrollView>
</TouchableOpacity>

谢谢!

EN

回答 2

Stack Overflow用户

发布于 2021-09-22 05:33:09

你可以试试这个。我试过你的代码,它对我很有效。

代码语言:javascript
复制
<TouchableOpacity>
  <View>
    <Text>... Some view I want static ...</Text>
  </View>
  <ScrollView horizontal>
    <View onStartShouldSetResponder={() => true}>
      <Text>... A bunch of components I want scrollable ...</Text>
    </View>
  </ScrollView>
</TouchableOpacity>
票数 2
EN

Stack Overflow用户

发布于 2018-12-02 11:10:49

@Henning Hall在这里有正确的答案,但是如果失败了,你可以在任何一个组件上实现一个PanResponder来获得你需要的触摸事件。

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

https://stackoverflow.com/questions/43025666

复制
相关文章

相似问题

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