反应原生android滚动视图无法正常工作

时间:2016-05-26 07:11:48

标签: react-native react-native-scrollview

我有一个反应原生组件,如:

import React, { Component } from 'react';
import { StyleSheet, Text, View, ScrollView } from 'react-native';

import Level from './Level';

class LevelList extends Component {
    render() {

        return (
            <ScrollView style={styles.scrollView} >
                <View style={styles.levelList}>
                    <Level />
                    <Level />
                    <Level />
                    <Level />
                    <Level />
                    <Level />
                </View>
            </ScrollView>
        )
    }
}

var styles = StyleSheet.create({
    scrollView: {
    backgroundColor: '#fff',
    flex: 1,
    },
    levelList: {
        marginTop: 50,
        flexDirection:'column',
        alignItems: 'center',
    },

})

export default LevelList;

此处<Level>只是一个包含文字的组件。

我的容器中有<LevelList>,如:

class LevelListView extends Component {
    render() {
        return (
            <View style={{flex: 1}}>
                <Header />
                <LevelList />
            </View>
        )
    }
}

export default LevelListView

这里我在列表的侧面有一个滚动条,但它没有滚动。 我在这里缺少什么?

我在模拟器中运行应用程序:

更新

import React, { Component } from 'react';

import { StyleSheet, Text, View } from 'react-native';

class Header extends Component {
    render() {
        return (
            <View style={styles.toolbar}>
                <Text style={styles.toolbarBack}>Back</Text>
                <Text style={styles.toolbarTitle}>Levels</Text>
            </View>
        )
    }
}

var styles = StyleSheet.create({
    toolbar:{
        backgroundColor:'#00bcd4',
        paddingTop:10,
        paddingBottom:10,
        flexDirection:'row'
    },
    toolbarTitle:{
        color:'#fff',
        textAlign:'center',
        fontSize:20,
        fontWeight:'bold',
        marginRight: 30,
        flex:1
    },
    toolbarBack: {
        color: '#fff',
        fontSize: 14,
        fontWeight: 'bold',
        marginTop: 4,
        marginLeft: 10,
    }
})

export default Header;

2 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,并在互联网上尝试了所有类似flex:1解决方案的问题...但是问题是,android不允许您将嵌套滚动与scrollview一起使用。我刚放

nestedScrollEnabled={true} 
对我的scrollview对象的

命令,它就像一个超级按钮。

答案 1 :(得分:0)

我遇到了类似的问题,但我通过执行以下操作解决了该问题:

<ScrollView style={{ 

    height:Dimensions.get('screen').height

    }}>
       ///
    </ScrollView>