我已經使用來自react-native的ListView組件並用它來呈現產品細節和圖像。在滾動圖像上加載圖像後,消失反應本機
現在,在加載圖像後,我向下滾動視圖。在回到以前的產品時,只有圖像消失,似乎從源頭重新加載。
圖片來源是一個URL。
請告訴我如何堅持已經加載的圖像在當前反應原生android屏幕上。
我使用:
"dependencies": {
"react": "16.0.0-alpha.12",
"react-native": "0.45.1",
"react-native-keyboard-aware-scroll-view": "^0.2.9",
"react-native-vector-icons": "^4.2.0",
"react-navigation": "^1.0.0-beta.11"
},
更新的代碼以供參考:
<ListView
renderRow={this._renderRow.bind(this)}
dataSource={this.state.dataSource}
pageSize={data.length}/>
</View>
_renderRow(data){
return (
<View style={styles.boxContainer}>
<Image
style={styles.image}
resizeMode={'contain'}
source={{uri: "https://vesyl.in/"+data.image_url}}
/>
</View>
</View>
)
}
從API響應:
data = [];
for(let i=0; i<responseJson.data.length; i++){
var t = responseJson.data;
data.push(t[i]);
}
const ds = new ListView.DataSource({rowHasChanged: (r1, r2)=>r1!==r2});
this.setState({dataSource: ds.cloneWithRows(data)});
data.image_url是含有圖像對象ü RLS。
由於您使用的是RN 0.45,我建議使用FlatList而不是ListView。除此之外,我真的需要查看您的代碼才能進一步幫助您。 – dejakob
@dejakob檢查代碼請 – subhajit
可以在_renderRow中添加console.log並檢查它是否被重新渲染? – dejakob