滚动视图中的图像背景不起作用React Native

时间:2019-01-18 10:00:22

标签: reactjs react-native scrollview

我是React Native的新手,我必须设计一个屏幕,当列表变长时,我意识到我的滚动视图在此处不起作用,位于我的代码下方,请分享建议...谢谢!

<View style={{flex:1}}>
    <ActionBar
      containerStyle={{height:60,alignItems: 'center'}}
      backgroundColor={'#fff'}
      title={'Select Categories'}
      titleStyle={styles.pageTitle}
      onLeftPress={() => goBack()}
      leftIconContainerStyle={{marginTop:22}}
      leftIconName={'back'}
      leftIconImageStyle={{backgroundColor:'#333',height:18,width:18}}
    />
    <Image source={require('../images/bg-login.jpg')}
     style={{position:'absolute',left:0,right:0,top:0,bottom:0}} />
     <ScrollView style={{backgroundColor:'#00000000',position:'absolute',left:0,right:0,top:0,bottom:0}} >
        {views}
    </ScrollView>
    <View style={styles.footerSec}>
        <TouchableOpacity style={styles.nextBtn}
          onPress={()=> {this.props.navigation.navigate('Tutorials',{tutId:this.state.selectedCats})}}>
          <Text style={[styles.btnText, styles.priceText]}>Next</Text>
        </TouchableOpacity>
    </View>
  </View>

这是我的清单代码:

<TouchableOpacity key={itemData[j]._id}
                onPress = {() => {
                  activeItem ? this.removeCat(itemData[j]._id) : this.insertCat(itemData[j]._id)
                }}>

                    <View style={{position:'relative'}}>
                      <LinearGradient colors={activeItem ? ['#cb5fb1', '#f874d8', '#f98bde'] :['#ffb6cf','#ffb6cf','#ffb6cf'] } style={{
                        position: 'absolute',
                        alignItems: 'center',
                        justifyContent:'center',
                        backgroundColor: '#f673d7',
                        width:  armSize,
                        height: armSize,
                        borderRadius: (armSize) / 2,
                        top: topp,
                        left: leftp,
                      }}>
                      <Text style={{
                            color: '#fff',
                            alignSelf:'center',
                            fontSize: RandomNumber,
                            fontWeight: '600',
                            }}>
                        {itemData[j].name}
                      </Text>
                      </LinearGradient>
                    </View>


                </TouchableOpacity>

我在屏幕下方进行了设计,但是滚动视图反弹并上升到相同位置...我认为这是由于子 position 样式引起的,但对于连续的圆来说是必需的。我无法滚动到下面的圆圈来解决问题。

enter image description here

2 个答案:

答案 0 :(得分:1)

您可以使用普通图像使用 position ='absolute'放置背景图像,并将ScrollView的背景颜色不透明度设置为#00000000 ,这意味着它将是透明的< / p>

示例

<Image
 source={require('../images/bg-login.jpg')}
 style={{position:'absolute',
 left:0, 
 right:0, 
 top:0,
 bottom:0}} />
 <ScrollView 
  style={{backgroundColor:'#00000000',
  position:'absolute',
  left:0,
  right:0,
  top:0,
  bottom:0}} >
    <View>
        <Text>Some content</Text>
    </View>
</ScrollView>

答案 1 :(得分:0)

对于我在下面的代码中使用的滚动视图问题,它在任何地方都可以正常工作

<ScrollView contentContainerStyle={{ paddingBottom: 120 }}>
---code---

</ScrollView>