我正在做一个本机应用程序,其中我在我的应用程序中实现了一个聊天功能。从服务器获取消息后,我要在聊天屏幕上聊天,我想像在什么应用程序中一样显示聊天,我想滚动到底部平面列表是我目前正在执行的代码,
<ScrollView style={{width:'100%',paddingBottom:100,backgroundColor:'#F5F0F0',flex:1}}>
<FlatList
style={{marginBottom:70,}}
data={this.state.chats}
numColumns={1}
onContentSizeChange={ () => { this.myFlatListRef.scrollToEnd({animated:true}) } }
ref={ (ref) => { this.myFlatListRef = ref } }
onLayout={ () => { this.myFlatListRef.scrollToEnd({animated:true}) } }
showsVerticalScrollIndicator={false}
renderItem={this.renderItem}
/>
</ScrollView>
我还尝试过像这样在componentDidMount
中设置超时
async componentDidMount(){
setTimeout(() => {
this.refs.myFlatListRef.scrollToEnd({animated: true});
}, 100);
var result = this.props.navigation.getParam('result')
this.setState({
user_id : result['to_id'],
user_name : result['name'],
user_image : result['image'],
})
this.timer = setInterval(()=> this.fetchMessage(), 3000)
this.fetchMessage()
}
但是以上两种都不行吗?为什么呢如何将平面列表滚动到底部? 预先感谢!