关于 SectionList 组件 的scrollToLocation 方法问题



  • SectionList 组件
    getItemLayout 属性及scrollToLocation 方法怎么设置, 以及 才能准确的跳转到的指定分组头部

    <SectionList
    ref={ref => this.sectionList = ref}
    renderItem={({item}) => this._renderItem(item)}
    renderSectionHeader={({section}) => this._renderSectionHeader(section)}
    sections={this.state.dataSource}
    stickySectionHeadersEnabled={true}
    getItemLayout={this._getItemLayout}
    ListFooterComponent={() => (<Text style={styles.footerText}>没有更多啦</Text>)}
    />

    每个分组里的列表项的高度都为 45
    每个分组头部高度都为 20
    index 是要跳转到分组的索引
    data 为所有数据
    _getItemLayout(data, index) {
    return {length: 45, offset: 45 * index + 20, index: index}
    }

    this.sectionList.scrollToLocation({
    sectionIndex: index,
    itemIndex: 0,
    viewPosition: 0,
    viewOffset: 0,
    })
    请问在android上运行 为什么每次跳转都有误差
    求大佬解惑, 困扰很久了!!


登录后回复