2016-06-13 61 views
0

如果我有ScollViewRefreshControlViewPagerAndroid启用,RefreshControl将窃取从ViewPagerAndroid平移运动。RefreshControl'偷取'移动手势从ViewPagerAndroid

我的意思是,通过将ViewPager拖动到左侧中途,然后在不释放触摸的情况下开始向下拖动,RefreshContorl将激活,出现并重置ViewPager的状态。

我试图尽快禁用RefreshControlViewPager回报比怠速以外的东西,但如果刷卡足够快(通常是),更新不及时发生停止RefreshControl从出现。

我的布局尽可能简单:

<View style={styles.container}> 
    <ScrollView style={{ flex: 1 }} removeClippedSubviews={true}> 
     <View style={{ height: 500, width: 350, marginBottom: 15, backgroundColor: 'cyan' }}> 
     <ViewPagerAndroid style={{ flex: 1 }}> 
      <View><Text style={{ fontSize: 30 }}>{'Page1'}</Text></View> 
      <View><Text style={{ fontSize: 30 }}>{'Page2'}</Text></View> 
     </ViewPagerAndroid> 
     </View> 
     <View style={{ height: 500, width: 350, marginBottom: 15, backgroundColor: 'lightblue' }}> 
     <ViewPagerAndroid style={{ flex: 1 }}> 
      <View><Text style={{ fontSize: 30 }}>{'Page1'}</Text></View> 
      <View><Text style={{ fontSize: 30 }}>{'Page2'}</Text></View> 
     </ViewPagerAndroid> 
     </View> 
    </ScrollView> 
    </View> 

我使用的是Mac,反应原生版本0.27.2

回答

0

你在滚动型有ViewPagerAndroid,它应该是其他方式。

btw。我使用的是带有refreshcontrol的scrollable tabview,效果很好。就我所知,它并没有使用ViewPagerAndroid,但它是跨平台的并且执行得很好(在禁用开发模式和重新加载之后)。

+0

ViewPagerAndroid是可滚动内容的一部分。如果传呼机不在ScrollView中,我怎么能做到这一点?我已经探索了其他基于JS的选项,例如你链接到的那个,但是性能明显更差...... –

+0

对不起,看着gif我以为你想实现多个滚动视图,而不仅仅是一个。你有没有试过把ViewPagerAndroid上面的东西放在'scrollY'不是0的位置? – vonovak