【问题标题】:React Native FlexBox & Wrap - how to detect if element moved to next row?React Native FlexBox & Wrap - 如何检测元素是否移动到下一行?
【发布时间】:2021-01-25 11:01:03
【问题描述】:

我有一个带有 flexDirection: 'row' 和 flexWrap: 'wrap' 的 React Native View。在里面我渲染了一堆带有图标的标签,其中一些移动到下一行。

我想检测新行以不渲染标有黄色的点:

知道如何实现吗?

【问题讨论】:

  • 你能分享你当前的代码吗?

标签: react-native flexbox position word-wrap


【解决方案1】:

您可以知道 flexbox 的初始高度,然后将 onLayout 事件附加到它,这样当高度超过您的初始高度时,您就会知道由于 flex-wrap,这些项目现在已经向下跨越了另一行, 这是 onLayoutEvent 的语法

 <View onLayout={(event) => {
  let {height} = event.nativeEvent.layout;
   }} />

根据高度,您可以更新组件状态并在此基础上为您的 UI 元素有条件地应用样式。

【讨论】:

    猜你喜欢
    • 2020-08-04
    • 2016-08-23
    • 2023-02-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-14
    • 2019-03-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多