触摸并滚动ScrollView中的ListView导致ScrollView不再呈现

时间:2016-10-21 03:08:02

标签: listview react-native scrollview

我在ScrollView中有一个ListView。 列表视图可以垂直滚动,滚动视图可以水平滚动。

视图层次结构如下所示:顶视图 - > ScrollView - >的ListView。

当我触摸并滚动列表视图时,将不再调用ScrollView的渲染功能。 - Top View的渲染功能按预期调用,而它只是不更新​​ScrollView。

如果我不进行触摸和滚动,那么一切都很顺利。 并且,在触摸和滚动之后,如果我触摸并滚动ScrollView,那么一切都会好起来的。

如果感觉像列表视图在触摸和滚动后得到了焦点,那么在失去焦点之前事情就不会顺利。

你能帮忙吗?非常感谢你!

1 个答案:

答案 0 :(得分:0)

找到根本原因。

我在ScrollView的onResponderGrant中设置了一个标志,并在其onResponderRelease中清除了标志。 在ScrollView的shouldComponentUpdate中,检查标志。

当我在ListView中进行触摸和滚动时,只调用了ScrollView的onResponderGrant,并且没有调用它的onResponderRelease,因此该标志不会被清除。

为什么没有调用onResponderRelease可能是ReactNative的错误。