2017-02-18 7 views
7

Ich benutze die ListView scrollToEnd, aber es funktioniert nicht, aber es funktioniert für scrollTo. Was soll ich tun, um damit umzugehen?Native ListView reagieren scrollToEnd funktioniert nicht

enter image description here

enter image description here

+0

Ich bin nicht sicher, würde dies arbeiten, da der ListView nicht alle Elemente beim vie rendern muss w ist montiert. Es gibt auch keine Möglichkeit zu wissen, wann die ListView mit dem Rendern aller Elemente fertig ist. AFAIK Die Methode 'scrollToEnd' kann mit einer Schaltfläche verwendet werden. – Eldelshell

+0

Erhalten Sie einen Fehler oder macht es nichts? – user1221780

+0

Auch Android oder iOS? – user1221780

Antwort

3

es eine Abhilfe ist, wickeln Sie es in einem setTimeout etwa so:

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

Scrollen lassen ist gültig, aber warum –

+0

Sorry, ich erinnere mich nicht, wo ich diese Problemumgehung hatte, aber ich kann sagen, dass ich Stunden damit verbracht habe, mit diesem Fehler zu kämpfen ... –

3

Versuchen Sie folgendes:

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