【发布时间】:2020-07-14 12:41:18
【问题描述】:
我想绝对定位我在 React Native 项目中拥有的 Font Awesome 图标相对于父级的父级,而不是图标的直接父级。
但是,当我查看它时,我在以下页面上发现了以下内容:https://reactnative.dev/docs/layout-props#position
React Native 中的
position与常规 CSS 类似,但默认情况下所有内容都设置为relative,因此absolute的定位始终相对于父级。
因此,如果我有类似以下内容,我如何定位图标相对于祖父母TouchableOpacity,而不是父母View?谢谢。
<TouchableOpacity
onPress={() => {}}
>
<View>
{/* Other markup here. */}
</View>
<View>
{/* Want to position this icon relative to TouchableOpacity, not View. */}
<FontAwesome name="heart" />
</View>
</TouchableOpacity>
【问题讨论】:
-
您能否在
View上使用onLayout将您的项目包装在TouchableOpacity中,获取它的测量值并将您的定位值设置为状态,然后使用这些值来定位(通过样式)您的@987654331 @图标 -
这就是我正在做的事情。我知道左视图有一定的宽度,所以我可以相应地调整我的
left和top值以获得预期的效果,但感觉很草率,我更喜欢更干净的方式,因此问题。
标签: css react-native css-position absolute