React-Native组件之ListView
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了React-Native组件之ListView,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1811字,纯文字阅读大概需要3分钟。
内容图文
在使用dataSource时,我们需要先new一个dataSource对象
constructor(){
super();
this.state = {
movies:new ListView.DataSource({
rowHasChanged:(row1,row2) => row1 !== row2
})
}
this.fetchData(); //豆瓣json https://api.douban.com/v2/movie/top250
};
1.getRowData(dataBlob, sectionID, rowID):表明我们将以何种方式从dataBlob(数据源)中提取出rowData,
sectionID用于指定每一个section的标题名(在renderRow,renderHeader等方法中会默认拆开并作为参数传入)
2.getSectionHeaderData(dataBlob, sectionID):表明我们将以何种方式从dataBlob(数据源)中提
取出HeaderData。HeaderData用于给每一个sectionHeader赋值
3.rowHasChanged(prevRowData, nextRowData):指定我们更新row的策略,一般来说都是prevRowData和
nextRowData不相等时更新row
4.sectionHeaderHasChanged(prevSectionData, nextSectionData):指定我们更新sectionHeader的策略,
一般如果用到sectionData的时候才指定
fetchData(){
data =‘username=‘+user;
fetch(REQUEST_URL,
{
method: ‘POST‘,
headers: {
‘Accept‘:‘application/json‘,
‘Content-Type‘:‘application/x-www-form-urlencoded‘
},
body: data
})
.then((response) => response.json()) //把response转为json
.then((responseData) => {
this.setState({
movies:this.state.movies.cloneWithRows(responseData.subjects)
})
})
.catch((error)=> {
alert(error);
})
};
renderMovieList(movie){
return(
<View>
<View style={styles.itemContent}>
<Text onPress={() => this._gotoSubClass(movie.Sn) } style={styles.itemHeader}>
{movie.title}
</Text>
</View>
</View>
);
}
//render两种写法 一
render() {
return(
<View style={styles.container}>
<ListView
dataSource={this.state.movies}
renderRow={
this.renderMovieList.bind(this) //上边自定义方法
}
/>
</View>
);
}
//render两种写法 二
render() {
return(
<View style={styles.container}>
<ListView
dataSource={this.state.movies}
renderRow={(movieData) => <Text>{movieData.title}</Text>}
/>
</View>
);
}
原文:http://blog.51cto.com/13562606/2118965
内容总结
以上是互联网集市为您收集整理的React-Native组件之ListView全部内容,希望文章能够帮你解决React-Native组件之ListView所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。