React native resizeMode=';包含';以自然反应

React native resizeMode=';包含';以自然反应,react-native,React Native,我是个新来的土生土长的人,我有一个非常简单的问题(至少我这么认为) 我有一个带有resizeMode='contain'的ImageBackground,现在我想把背景放在容器的顶部 <ImageBackground style={styles.imageBackground} source={backgroundImage} resizeMode='contain'> ... some content </ImageBackground> ... 一些内容 图


我是个新来的土生土长的人,我有一个非常简单的问题(至少我这么认为)

我有一个带有
resizeMode='contain'
的ImageBackground,现在我想把背景放在容器的顶部

<ImageBackground style={styles.imageBackground} source={backgroundImage} resizeMode='contain'> 
... some content 
</ImageBackground>

... 一些内容
图像以正确的方式渲染,但问题是它是垂直居中的,相反,我希望它顶部对齐


ImageBackground
组件中,图像不是垂直居中的,而是绝对定位以填充容器。您可以检查源代码。它显示为垂直居中的原因可能是因为resizeMode
contain
。要使其顶部对齐,您可以使用prop
imageStyle
,您可以将其设置为如下所示:

<ImageBackground
    imageStyle={{
        bottom: 40 // Whatever offset you want from the bottom
    }}
/>


是的,我已经看到了源代码,但是这个di对我没有帮助。。。然而,对于您的解决方案,我没有得到使图像在顶部对齐的效果。。。我认为在
ImageBackground
的样式上使用
{flex:1,justifyDirection:'flex start'}
会起作用,但它不是…
flex
不会起作用,因为它是绝对定位的。添加底部偏移时到底发生了什么?你能检查一下样式吗,或者最好创建一个代码笔来重现你的问题。随着底部偏移,图像向上移动,但我找不到一个值可以将图像放在每个设备的顶部,我错了?react native提供的默认样式已经包含
顶部:0
左侧:0
,和
right:0
,因此它应该始终显示在每个设备的顶部。我添加了两个示例图像,带和不带底部偏移