2016-11-29 4 views
1

У меня есть простое приложение для реагирования, которое загружает изображения в компонент. Компонент использует стандартный компонент изображения.React native bug image показывает blank

<Image source={this.state.ImageSource} style={styles.image} /> 

У меня есть следующий код, который инициализирует ImageSource.

componentDidMount() { 
    this.setState({ImageSource: {uri: this.props.imageurl}}); 
} 

Источник изображения - объект с uri, например, { uri: ' http://localip:123/controller/imageaction/imageid '}.

Изображения того размера, что 1MB в размере нагрузки без проблем. Изображения с размером 1 Мбайт или более, похоже, имеют проблемы, когда они отображают пустой образ для кажущегося навсегда.

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

Я тестирование на медленном нижнем конец LG немой смартфон с Android 4.1.2. Но в браузере Google Chrome этот телефон способен отображать большие и маленькие изображения без проблем.

Я попытался исправить это с помощью Android: largeHeap = "true", но это не вызвало никаких изменений в поведении. Сжимающиеся изображения позволяют им загружать, но мне нужно отображать большие изображения, а также небольшие.

Спасибо за любую помощь.

ответ

2

Вы можете попробовать это

componentDidMount() { 
    this.setState({ImageSource:this.props.imageurl}); 
} 

<Image source={{uri: this.state.ImageSource}} style={{width: 400, height: 400}}/> 
+0

Hi Ganesh, спасибо за Ваш ответ. Я пробовал много комбинаций для установки источника, включая жестко закодированные URI для тестирования, и проблема все еще была. Я уверен, что это не из-за того, как я источник настроек. Объект styles.image также содержит ширину и высоту. – Mzn

+0

https://facebook.github.io/react-native/docs/image.html попытайтесь воспроизвести то же самое с помощью URL-адреса. А затем измените базу кода на требование ur. Если это работает, это означает, что в коде ur нет проблем. Или поделитесь URL-адресом, который я попытаюсь загрузить в своем примере. –