问题标签 [react-native-flatlist]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2124 浏览

react-native - 如何在 ListView 或 FlatList 中呈现绝对元素?

这是我一直在戳的一个有趣的东西:

我有一个 FlatList (与 ListView 相同的问题),我想在内部滚动容器内呈现一个具有以下特征的元素:

  • 绝对定位(因此对列表元素的位置没有影响)
  • 位置 XX 距离顶部(translateYtop
  • zIndex(在列表元素之上)

用例是我在当前时间位置渲染一个带有水平条的日视图日历网格,该位置与内部滚动视图的开头固定在 X 距离处,因此当用户滚动通过该位置时它会出现。

到目前为止,我已经尝试将 FlatList/ListView 与另一个 ScrollView 包装在一起...还尝试将此元素渲染为仅在页眉/页脚可见时才起作用的页眉元素(在视野之外时被丢弃)。

欢迎任何和所有想法。:)

谢谢

下面的屏幕截图(红色条是我要渲染的):

日视图日历网格

0 投票
2 回答
2181 浏览

react-native - React Native 列表 - RecyclerView & UITableView

我很好奇为什么 React Native 不使用原生平台列表组件,例如 Android 的 RecyclerView 和 iOS 的 UITableView (CollectionView)。

理想情况下,这可以提供比当前可用的更多的功能支持和改进的性能。

React Native 列表是否完全由 ScrollViews 支持?

0 投票
1 回答
2360 浏览

react-native - 使用平面列表代替滚动视图

我有以下代码,它工作正常我可以连接到 API 并获取数据,因为我得到了一个庞大的线程列表,如何使用 Flatlist 重构代码?

谢谢

0 投票
1 回答
6488 浏览

javascript - 反应原生 SectionList 布局

我正在使用不同的部分标题来呈现多个部分。我在以我想要的方式显示它时遇到了一些麻烦。我想让我的标题在顶部和下面,该部分的项目作为网格。

这就是我现在所拥有的

使用此代码:

所以我希望能够不将sectionListContainer的css应用于sectionHeader。但我不确定这是否可能。

如果有人对此有任何想法,请告诉我!

谢谢!

0 投票
2 回答
21233 浏览

react-native - React-Native:使用 pagingEnabled 时获取 FlatList 中的当前页面

我有一个如下所示的 FlastList:

我设置了组件的宽度,以便一次只在屏幕上显示一页。如何确定当前页面是什么(或者,当前显示的组件)?

0 投票
2 回答
2040 浏览

react-native - React Native:在Androdid的嵌套FlatLists中滚动时刷新卡住了

在使用水平 FlatList 和其他垂直 FlatList 作为项目时,刷新似乎存在问题。当在垂直列表上启用刷新但在水平容器列表上未启用刷新时,会发生这种情况。如果您非常小心并且仅垂直滚动(这非常困难),则实际上可以刷新每个单独的列表。但是一旦你横向滚动,刷新就会卡住。

  • React Native 嵌套 FlatLists
  • Android 中的问题。在 iOS 中工作

尝试我尝试用具有相同结果的 ScollView 替换包装 FlatList。我完全意识到可以禁用单个列表的刷新并在包含的 FlatList 上启用它,但这在我的情况下不太合适。

我也尝试过对这个类似问题的赞成答案,但它没有解决它。

刷新符号和进程卡住了

例子:

有人对此有解决方案吗?

0 投票
5 回答
9880 浏览

performance - 如何使用 ReactNative 0.43 提高大列表的 FlatList 渲染性能?

我正在尝试使用 RN0.43 中的 FlatList 在 3 列中呈现约 250 个图像的列表,并且我在 FlatList 的 onLayout 函数中更改图像的宽度以适应屏幕的宽度。

初始性能还可以,但在向上/向下滚动后,有时需要一到两秒钟才能显示图像。

更糟糕的是,如果我更改为屏幕方向,屏幕更新需要 2~3 秒。

一些发现:

  1. 屏幕旋转后,调用 FlatList.onLayout 需要一两秒

  2. 在 FlatList.onLayout 和图像宽度更新之后,每个图像(大约列表的一半,~150 个图像;而只显示~15 个图像)被渲染 2~4 次,而 render() 只被调用一次。

问题:

  1. 如何修改代码以提高性能?
  2. 在多列列表的 getItemLayout() 中,偏移量是否应该类似于 (itemHeight + separatorHeight) * (index%numColumns)?

谢谢。

测试:GalaxySII (4.1.2) 和 Android SDK 模拟器 (7.1.1)

0 投票
20 回答
144561 浏览

reactjs - 如何重新渲染平面列表?

与 ListView 不同,我们可以更新 this.state.datasource。是否有任何方法或示例来更新 FlatList 或重新渲染它?

我的目标是在用户按下按钮时更新文本值......

0 投票
12 回答
96825 浏览

react-native - React Native FlatList 与列,最后一项宽度

我正在使用 FlatList 在两列中显示项目列表

卡片组件只是一个带有一些样式的视图:

它工作正常,但如果项目数是奇数,最后一行只包含一个项目,并且该项目延伸到屏幕的整个宽度。

如何将项目设置为与其他项目相同的宽度?

在此处输入图像描述

0 投票
2 回答
18534 浏览

react-native - FlatList numColumns 似乎无法正常工作?

我正在尝试使用 FlatList 以网格格式向某人显示一堆用户头像,但它最终看起来很奇怪,我似乎无法弄清楚如何修复它。

这是它的样子

这是我的 FlatList 代码的样子:

这是renderItem组件的样子:

有人有想法么?