我正在使用Navigator
,在我的某个页面中,我有一个水平ListView
,其中包含许多项目,并且它的宽度比屏幕宽。宽度。因此,当我尝试在列表中滚动时,它不会滚动,而是滑动到另一个场景。如果我阻止Navigator'通过设置场景来滑动'手势到null
然后在我的ListView中滚动就可以了。
这是我的导航器' configureScene
功能:
configureScene={
route => {
var sceneConfig;
if (route.sceneConfig) {
sceneConfig = route.sceneConfig;
} else {
sceneConfig = {...Navigator.SceneConfigs.HorizontalSwipeJump};
// sceneConfig.gestures = null;
}
return sceneConfig;
}}
我的名单:
<ListView horizontal={true} ... />
那么如何在列表中同时使用水平滚动并在其页面中向后/向前滑动?
答案 0 :(得分:0)
我最终这样做了:
<form>
因此,诀窍在于创建自定义componentWillMount() {
this.listViewResponder = PanResponder.create({
onMoveShouldSetPanResponderCapture: (evt) => {
evt.stopPropagation();
return false;
}
});
}
render() {
return (
<ListView
{...this.listViewResponder.panHandlers}
// the rest List' settings
/>
)
}
并阻止PanResponder
事件传播到父级Move
。