You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
(void)handleCustomPan:(__unused UIPanGestureRecognizer *)sender
{
//改动地方在这里
if ([self _shouldDisableScrollInteraction] && ![NSStringFromClass([RCTUIManager JSResponder].class) isEqualToString:@"RCTScrollView"]) {
self.panGestureRecognizer.enabled = NO;
self.panGestureRecognizer.enabled = YES;
// TODO: If mid bounce, animate the scroll view to a non-bounced position
// while disabling (but only if stopScrollInteractionIfJSHasResponder was
// called during a pan). Currently, it will just snap into place which
// is not so bad either.
// Another approach:
// self.scrollEnabled = NO;
// self.scrollEnabled = YES;
}
}
Activity
[-]scrollview滑动不流畅[/-][+]解决scrollview滑动不流畅[/+]geniu-vs commentedon Jul 4, 2019
不是这里的原因,改了没用。
是外部下拉的scrollView和FlatList的scrollView手势重叠了,
最终都是作用到RCTScrollView上,
我把MJScrollView.js里的onScrollShouldSetResponder: this.scrollResponderHandleScrollShouldSetResponder,(触摸开始时是否成为响应者)
这句话注释掉就可以了,
但是注释掉后带下拉的sectionList又滑不动了,
所以我现在还没找到一个好的解决方案。
geniu-vs commentedon Jul 8, 2019
onScrollShouldSetResponder: () => false, sectionList卡顿是因为我在外层使用了react-native-scrollable-tab-view,按照 #20 修改下就好了,不过滑动还是有一点点问题,就是如果里面的FlatList先上滑再下滑,不会触发下拉刷新,因为手势还是作用在FlatList上,要松一次再下拉,手势才会定在外层ScrollView上。
geniu-vs commentedon Jul 12, 2019
这样改有个问题,由于onScrollShouldSetResponder手势被拦截,在左右滑动的时候就会触发list的item点击事件,左右滑动会进入二级页面,对于使用了ScrollableTabView的页面是可怕的,所以这个方案无效
woshi82 commentedon Aug 6, 2019
最近我也遇到这个问题~ 所以最后是怎么解决的呢?
woshi82 commentedon Aug 6, 2019
提主的方式有效~值得一试。 仔细看了下我用的Flatlist 中的ScrollView 是我自定义的xxScrollView, 此时就会出现 IOS 滚动不顺滑的现象。
BleachCC commentedon Oct 18, 2019
我是单层的Flatlist,使用楼主的方法得到了解决
MackJac commentedon Nov 19, 2019
is userful