2017-02-18 11 views
7

Я использую ListView scrollToEnd, но он не работает, но он работал для scrollTo. Что мне делать, чтобы справиться с этим.React Native ListView scrollToEnd не работает

enter image description here

enter image description here

+0

Я не уверен, что это будет работать, поскольку ListView не должен отображать все элементы, когда vie w монтируется. Также нет способа узнать, когда ListView выполняется с рендерингом всех элементов. AFAIK метод 'scrollToEnd' можно использовать с помощью кнопки. – Eldelshell

+0

Вы получаете сообщение об ошибке или просто ничего не делаете? – user1221780

+0

Также, Android или iOS? – user1221780

ответ

3

Существует обходной путь, завернуть его в setTimeout так:

componentDidMount() { 
    setTimeout(() => { 
    this.refs.dateList.scrollToEnd(); 
    }, 50); 
} 
+0

Это действительно, но почему –

+0

Извините, я не помню, где у меня это обходное решение, но я могу сказать, что я потратил часы, борясь с этой ошибкой ... –

3

Попробуйте это:

<ListView> 
    ref={ (ref) => this.scrollView = ref } 
    onContentSizeChange={() => {   
     this.scrollView.scrollToEnd({ animated: false }) 
    } } > 
</ListView>