Предложенное решение работает, но вы должны загрузить изображение дважды, один раз, чтобы определить размер, и другой, чтобы фактически показать изображение, это другой подход, изображение загружается в квадрате вначале и изменяется в размере.

м приложении React Native я получаю изображения из API с неизвестными размерами. Как автоматически масштабировать высоту, если я знаю желаемую ширину?

Пример:

Я установил ширинуDimensions.get('window').width, Как установить высоту и сохранить такое же соотношение?

export default class MyComponent extends Component {
  constructor(props) {
    super(props)
    this.state = {
      imgUrl: 'http://someimg.com/coolstuff.jpg'
    }
  }

  componentDidMount() {
    // sets the image url to state
    this.props.getImageFromAPi()
  }

  render() {
    return (
      <View>
        <Image 
          source={uri: this.state.imgUrl}
          style={styles.myImg}
        />
        <Text>Some description</Text>
      </View>
    )
  }
}

const styles = StyleSheet.create(
  myImg: {
    width: Dimensions.get('window').width,
    height: >>>???what goes here???<<<
  }
)

Ответы на вопрос(7)

Ваш ответ на вопрос