android 根据图像动态调整视图高度

k10s72fa  于 2022-12-09  发布在  Android
关注(0)|答案(2)|浏览(168)

我想让视图的高度根据图像高度而变化,就像在Twitter和LinkedIn中一样,即如果有一张风景图片,那么与肖像图片相比,高度是不同的,到目前为止,我试图这样做,但我得到了图像上方和下方的大量白色,这看起来不太好,我不想通过使resizeMode拉伸或覆盖来损害图像的分辨率
我现在的代码是

<TouchableOpacity onPress={() => handleImagePress(0)} style={{width:device_width,height:device_height
        }}>
        <NativeImage source={{uri:SingleImage.uri}}   resizeMode="contain" style={{ width:"100%",overflow:"hidden" ,height :"100%" ,resizeMode:"contain"}}  />  
        </TouchableOpacity>

`
black arrow is blank space此处,我将device_height的高度设置为device_height,因为它比image高度小得多,如果设置image_height,则白色区域的大小会增大

oewdyzsn

oewdyzsn1#

我已经创建了一个小吃,你可以获取图像与随机的高度和宽度,并调整高度和宽度的同一图像,显示在屏幕上的基础上的图像属性。检查它在这里,它应该为您做的工作https://snack.expo.dev/c0uDwh1DD

uz75evzq

uz75evzq2#

你可以使用下面的代码获得图像大小,并将其应用到你的视图和图像中,如果尺寸与屏幕相比非常大,那么根据你的要求将其缩小。

Image.getSize(Imagepath,
        (width, height) => {
           console.log(width,height)
        }
      );

您需要使用useState将这些值保存在变量中。

相关问题