张志永
张志永
我这里也是,link完他加到pod里了,我自己拖进项目的,静态库也加了,debug真机没问题,release就报错,找不到这个文件libRCTMJRefreshHeader.a
@RoarRain 不行不行,那个解决方法能打包成功,但是运行不了,"RCTMJRefreshView" was not found in the UIManager.
我的解决了 Duplicate of #43
终于搞定了! 解决办法: 第一步:libRCTMJRefreshHeader.a加到Link Binary With Libraries中 第二步:修改RCTMJRefreshHeader项目,iOS Deployment Target 改成跟你项目一致版本 第三步:找到你项目配置Build Settings —> Header Search Paths,把$(SRCROOT)/../node_modules/react-native-mjrefresh/ios/RCTMJRefreshHeader/RCTMJRefreshHeader删掉。 clean一下,重新打包。 如果不行,打开/Users/sj/Library/Developer/Xcode/DerivedData ,把里面的当前项目缓存删掉,再试一下。
不是这里的原因,改了没用。 是外部下拉的scrollView和FlatList的scrollView手势重叠了, 最终都是作用到RCTScrollView上, 我把MJScrollView.js里的onScrollShouldSetResponder: this.scrollResponderHandleScrollShouldSetResponder,(触摸开始时是否成为响应者) 这句话注释掉就可以了, 但是注释掉后带下拉的sectionList又滑不动了, 所以我现在还没找到一个好的解决方案。
onScrollShouldSetResponder: () => false, sectionList卡顿是因为我在外层使用了react-native-scrollable-tab-view,按照 #20 修改下就好了,不过滑动还是有一点点问题,就是如果里面的FlatList先上滑再下滑,不会触发下拉刷新,因为手势还是作用在FlatList上,要松一次再下拉,手势才会定在外层ScrollView上。
这样改有个问题,由于onScrollShouldSetResponder手势被拦截,在左右滑动的时候就会触发list的item点击事件,左右滑动会进入二级页面,对于使用了ScrollableTabView的页面是可怕的,所以这个方案无效