React 本机滚动视图动画标题:在调整大小时更改布局的高性能方法?



我一直在这里关注这篇文章,在平面列表的滚动上对标题调整大小进行动画处理(注释列表,在滚动 Y 上,减少标题)。它工作得很好(有时有点慢,但没关系)。

现在我想在调整大小时更改布局配置:当标题变小时从一列传递到两列。但在我看来,要获得高性能的结果非常困难。

我想到了两种方法:

  1. 在标题上使用onLayout,以侦听调整高度大小,在高度插值的中间,更改样式类。此方法的性能成本很高,因为它每帧都会触发布局侦听器,因此我的应用程序非常有问题。

  2. 听ScrollY,在ScrollY的中间,换个班级。与前面提到的问题相同,每个帧检查滚动 Y 都会使我的滚动执行非常缓慢。

有没有人在调整大小时更改视图布局作为更好的主意?

谢谢

编辑:这里是OnLayout事件的示例,称为大量时间,导致关闭

动图示例

你应该为此使用onLayout

如果您的应用在使用 onLayout 时出现问题,则应调查原因,因为这不是每帧都调用的。

来源: https://facebook.github.io/react-native/docs/view#onlayout

在装载和布局更改时调用

最新更新