如何在React-Native中检查水平或垂直图像状态?

ix0qys7i  于 2022-12-30  发布在  React
关注(0)|答案(1)|浏览(128)

我想在react-native中出现垂直图像时使用“contain”功能,在出现水平图像时使用“stretch”功能。如何检查水平或垂直状态?例如:

<Image resizeMode={status==horizantal?'contain':'stretch'} />
knpiaxh1

knpiaxh11#

我将在条件呈现函数中处理这个问题,并使用Image类中的静态getSize方法计算大小,如下所示:

buildImage = (imageUri) => {
   Image.getSize(imageUri, (width, height) => {
      if (width > height) {
         //image is horizontal
         return [<Image resizeMode={'contain'}/>];
      } else {
         //image is vertical
         return [<Image resizeMode={'stretch'}/>];
      }
   });
   return [];
}

render() {
   return(
      {this.buildImage(this.state.image)}
   )
}

getSize文档以供参考。

相关问题