1
不知道是否有其他人遇到這個問題...React-native:幾次重新加載JS後圖像丟失
我有一個簡單的頁面,其中包含幾個圖像。當我第一次啓動應用程序時,一切都完美加載。但是,我重新加載JS多次後,圖像開始隨機消失。如果我關閉了應用程序並重新開始,它將恢復正常並重新加載JS。
這是什麼原因造成的?這是我缺少的東西,還是隻是調試模式的問題?
的環境做出反應,原生的Android,Win10 + Genymotion模擬器
並附加了完整代碼:
var React = require('react-native');
var {
StyleSheet,
PixelRatio,
View,
Text,
Image,
} = React;
var PropTypes = require('ReactPropTypes');
var util = require('../lib/util');
var MainView = React.createClass({
render: function() {
return(
<View style={styles.body1}>
<Image source={require('./images/bg.png')} style={[styles.stretch, styles.bg]} resizeMode={Image.resizeMode.stretch}>
<Image source={require('./images/bg_high.png')} style={styles.bg_high}>
<Image source={require('./images/starFigure_bg.png')} style={styles.block_high}>
<Image source={require('./images/starFigure.png')} />
</Image>
</Image>
</Image>
</View>
)}
})
var styles = StyleSheet.create({
main: {
flex: 1,
},
body1: {
flex: 1,
alignItems: 'stretch'
},
stretch: {
flex: 1,
},
bg: {
paddingTop: 160/PixelRatio.get(),
paddingLeft: 30/PixelRatio.get(),
},
bg_high: {
paddingLeft: 7/PixelRatio.get(),
paddingTop: 37/PixelRatio.get(),
flexDirection : 'row',
},
block_high: {
marginLeft: 20/PixelRatio.get(),
paddingLeft: 25/PixelRatio.get(),
paddingTop: 25/PixelRatio.get(),
},
btn : {
height: 30,
},
bg_s: {
width: util.size.width/2
},
});
module.exports = MainView
但拉伸是使bg圖像正確覆蓋屏幕而不考慮屏幕比例的唯一方法。 ------ 我在Windows上試用過股票谷歌模擬器,它發生的頻率要低得多。你使用的是什麼模擬器? –
我仍然遇到這個問題,我發現這種情況發生在設備內存較少時更頻繁。我正在使用真實設備進行測試。 –
我的同事告訴我,如果他們的應用程序在實際設備中加載了一堆圖像,它可能會發生。我相信這也與記憶有關。 –