Я использую ListView scrollToEnd
, но он не работает, но он работал для scrollTo
. Что мне делать, чтобы справиться с этим.React Native ListView scrollToEnd не работает
7
A
ответ
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>
Я не уверен, что это будет работать, поскольку ListView не должен отображать все элементы, когда vie w монтируется. Также нет способа узнать, когда ListView выполняется с рендерингом всех элементов. AFAIK метод 'scrollToEnd' можно использовать с помощью кнопки. – Eldelshell
Вы получаете сообщение об ошибке или просто ничего не делаете? – user1221780
Также, Android или iOS? – user1221780