首页 > 解决方案 > 在 ReactNative 的 Flatlist 中显示 2 个项目

问题描述

在平面列表的帮助下,我可以渲染水平滚动的项目,参考下图:

图片参考:

我只想限制 2 张启用分页的图像。我正在使用下面的代码来显示:

看法:

<SafeAreaView style={styles.container}>
        <Text style={styles.title}>Topics</Text>
        <FlatList
            contentContainerStyle={styles.bookslist}
            pagingEnabled
            horizontal
            data={BookManager.getBooks()}
            renderItem={renderCoverImage}
            ItemSeparatorComponent={
                () => <View style={{ width: 16, backgroundColor: 'clear' }} />
            }
            getItemLayout={(data, index) => ({ length: 50, offset: 50 * index + 30, index })}
        />
    </SafeAreaView>

风格:

const styles = StyleSheet.create({
    container: {
        flex: 1,
        justifyContent: 'center'
    },
    title: {
        padding: 20,
        fontWeight: '700',
        fontSize: 22
    },
    bookslist: {
        backgroundColor: '#00FF00',
        paddingLeft: 20,
        paddingRight: 20,
        paddingTop: 0,
        paddingBottom: 50
    }
});

我尝试并注意到“getItemLayout”不起作用。我错过了什么吗?
我怎样才能一次只渲染 2 个项目。如果还有更多项目,我想使用分页选项。如何设置style或者getItemLayout来实现?

标签: react-nativereact-native-flatlist

解决方案


推荐阅读