【发布时间】:2020-05-26 08:21:40
【问题描述】:
我是 RN 新手,我无法处理高度优先涉及的图像,我似乎无法找到解决方法。
基本上,我希望图像的高度始终等于该行中下一个视图的总高度(styles.itemDetails 的视图)。
图像总是增长到它的图像原生高度,如果我使用aspectRatio,它会忽略resizeMode 属性并且不会增长到可用空间。
组件:
<View style={styles.item}>
<Image style={styles.itemImg} source={source} />
<View style={styles.itemDetails}>
<Text>{poi.name}</Text>
<Text>{poi.conciseDescription}</Text>
</View>
</View>
样式:
const styles = StyleSheet.create({
item: {
marginTop: 8,
marginHorizontal: 8,
borderRadius: 8,
backgroundColor: '#E5E5E5',
flexDirection: 'row',
},
itemImg: {
flex: 1,
borderTopLeftRadius: 8,
borderBottomLeftRadius: 8,
resizeMode: 'cover',
},
itemDetails: {
flex: 2,
margin: 16,
backgroundColor: 'green',
},
itemTitle: {
fontSize: 22,
},
});
【问题讨论】:
-
你必须在容器
item:{display:flex}上设置显示为flex。 -
@alan_jouhar 谢谢,但添加
display:flex似乎根本没有效果。
标签: javascript css reactjs react-native flexbox