调整图像大小使其居中

Resizing an image to be centered

我有这样一张图片:

我正在尝试制作一个 100x100 的正方形,然后将该图像居中放置在其中。我可以使用以下代码获得 100x100 的正方形:

import * as React from 'react';
import { View, Image, StyleSheet } from 'react-native';

class App extends React.Component {
  render() {
    return (
      <View style={styles.container}>
        <View style={styles.imageContainer}>
          <Image
            source={{ uri: 'https://storage.googleapis.com/iex/api/logos/GOOGL.png', }}
            style={styles.image}
          />
        </View>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center'
  },
  imageContainer: {
    borderWidth: 1
  },
  image: {
    width: 100,
    height: 100
  }
});

export default App;

但是这样会截断图像:

有没有一种方法可以设置 100x100 width/height,但允许图像根据需要调整大小以适应并在正方形内居中?谢谢!

这里有一个link,对我来说很有用!是 jQuery 图片中心 r。 通过在其父容器内移动、裁剪和填充空间来使图像居中。保持纵横比.

http://boxlight.github.com/bl-jquery-image-center

你试过这样的事情吗?它被称为 React Native 的 resizeMode。

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center'
  },
  imageContainer: {
    borderWidth: 1
  },
  image: {
    width: 100,
    height: 100,
    resizeMode: 'contain'
  }
});

有关调整大小的信息,请参阅文档中的 resizeMode 和 resizeMethod 文档。