我想创建一个具有ListView
标头的React Native演示。目前,我只是在我的ListView
组件上呈现视图:
render: function() {
if (!this.state.loaded) {
return this.renderLoadingView();
}
return (
<View style = {styles.viewContainer}>
<Text style = {styles.title}>标题:{this.state.question.content}</Text>
<Text style = {styles.year}>描述:{this.state.question.description}</Text>
<ListView
dataSource={this.state.dataSource}
renderRow={this.renderMovie}
style={styles.listView}/>
</View>
);
//加载回复答案
},
renderLoadingView: function() {
return (
<View style={styles.container}>
<Text>
Loading Infos...
</Text>
</View>
);
},
renderMovie: function(movie) {
return (
<View style={styles.container}>
<View style={styles.rightContainer}>
<Text style={styles.title}>{movie.content}</Text>
<Text style={styles.year}>id:{movie.username}</Text>
</View>
</View>
);
},
});
我想将标题呈现为ListView
组件的一部分。我怎么能这样做?
答案 0 :(得分:0)
根据React Native documentation on ListView,ListView
可以接受renderHeader
函数作为道具,并根据它呈现标题。
以下是您可以这样做的方法:
render: function() {
if (!this.state.loaded) {
return this.renderLoadingView();
}
return (
<View style = {styles.viewContainer}>
<ListView
dataSource={this.state.dataSource}
renderRow={this.renderMovie}
renderHeader={this.renderHeader}
style={styles.listView}/>
</View>
);
},
renderHeader: function() {
return (
<View>
<Text style = {styles.title}>标题:{this.state.question.content}</Text>
<Text style = {styles.year}>描述:{this.state.question.description}</Text>
</View>
)
}
renderLoadingView: function() {
return (
<View style={styles.container}>
<Text>
Loading Infos...
</Text>
</View>
);
},
renderMovie: function(movie) {
return (
<View style={styles.container}>
<View style={styles.rightContainer}>
<Text style={styles.title}>{movie.content}</Text>
<Text style={styles.year}>id:{movie.username}</Text>
</View>
</View>
);
},
});