当您的列表非常大时,virtualizedlist 组件是最好的。virtualizedlist 有助于提高性能和内存使用率。当用户滚动时,数据会显示给用户。
VirtualizedList 的基本组件如下 &minuns;
<VirtualizedList data={DATA} initialNumToRender={4} renderItem={renderItem} keyExtractor={keyExtractor} getItemCount={getItemCount} getItem={getItem} />| 属性 | 描述 |
|---|---|
| renderItem | 将渲染数据中的项目 VirtualizedList 内。 |
| data | 要显示的数据。 |
| getItem | 获取单个项目的函数 |
| getItemCount | 获取数据项的数量。 |
| initialNumToRender | 开始时渲染的次数。 |
| keyExtractor | 每个要考虑的唯一键 指定索引的项目。 |
这是 VirtualizedList 的工作示例。
要使用 VirtualizedList,请首先按如下方式导入它 -
import { SafeAreaView, View, VirtualizedList, StyleSheet, Text } from 'react-native';VirtualizedList的代码如下 -
<SafeAreaView>
<VirtualizedList
data={DATA}
initialNumToRender={4}
renderItem={({ item }) => <Item title={item.title} />}
keyExtractor={item => item.id}
getItemCount={getItemCount}
getItem={getItem}
/>
</SafeAreaView>我们要显示渲染的初始项目是 4。renderItem 属性用于在屏幕上显示项目。它使用定义如下所示的自定义 Item 组件 -
const Item = ({ title })=> {
return (
<View style={styles.item}>
<Text style={styles.title}>{title}</Text>
</View>
);
}keyExtractor 定义每个项目的唯一键。
keyExtractor={item => item.id}props getItemCount 获取将向用户显示的项目总数。现在它调用函数 getItemCount,其定义如下。
const getItemCount = (data) => {
return 100;
}
getItemCount={getItemCount}getITem 属性用于获取要显示的数据。它调用 getItem 方法,其定义如下 -
const getItem = (data, index) => {
return {
id: index,
title: 'test'
}
}
getItem={getItem}显示VirtualizedList的完整代码如下 -
import React from 'react';
import { SafeAreaView, View, VirtualizedList, StyleSheet, Text } from 'react-native';
const DATA = [];
const getItem = (data, index) => {
return {
id: index,
title: 'test'
}
}
const getItemCount = (data) => {
return 100;
}
const Item = ({ title })=> {
return (
<View style={styles.item}>
<Text style={styles.title}>{title}</Text>
</View>
);
}
const VirtualizedListExample = () => {
return (
<SafeAreaView>
<VirtualizedList
data={DATA}
initialNumToRender={4}
renderItem={({ item }) => <Item title={item.title} />}
keyExtractor={item => item.id}
getItemCount={getItemCount}
getItem={getItem}
/>
</SafeAreaView>
);
}
const styles = StyleSheet.create({
item: {
backgroundColor: '#ccc',
height: 100,
justifyContent: 'center',
marginVertical: 8,
marginHorizontal: 16,
padding: 20,
},
title: {
fontSize: 32,
},
});
export default VirtualizedListExample;
以上就是解释一下 ReactNative 中 VirtualizedList 组件的用法?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号