Reagieren Native: Festlegen von flex:1 auf eine ScrollView contentContainerStyle Ursachen von überlappenden Komponenten

Problem:

Ich habe eine ScrollView mit 2 Untersichten und ich möchte der erste von Ihnen (nennen wir es ViewA) {flex: 1}, so dass die anderen (ViewB) halten an der Unterseite des Bildschirms - aber nur, wenn Ihre Höhe ist kleiner, der Bildschirm. Natürlich, wenn Sie höher sind als der Bildschirm, ich will ihn zu scrollen als gewöhnlich.

Fall 1 (GUT): ViewA mit dem langen text, ViewB scrollt mit. https://rnplay.org/apps/slCivA

Fall 2 (SCHLECHT): ViewA mit kurzen text, ViewB nicht auf den Boden kleben. https://rnplay.org/apps/OmQakQ

Versuchte Lösung:

Damit ich die ScrollView Stil UND contentContainerStyle zu flex: 1. Ich
Auch legen Sie ViewA den Stil flex:1. Aber wenn ich es tun, die ScrollView ist contentContainer Blick ist fixiert auf den Bildschirm-Höhe, also nicht zu scrollen, wenn nötig, und noch schlimmer - ViewB überschneidungen ViewA.

Fall 3 (SCHLECHT): ViewB bleibt am Boden, aber die ganze Sache nicht scrollen. https://rnplay.org/apps/wZgtWA

Ob es ein bug ist - wie fix/workaround?
Wenn es das erwartete Verhalten - wie kann ich das erreichen was ich beschrieben habe?

Dank.

Könnte man das problem reproduzieren, oder ein Beispiel auf rnplay.org ? Danke.
Ja - hier ist es: rnplay.org/apps/wZgtWA . Beachten Sie, dass auch ohne ViewB, sobald Sie flex:1 auf contentContainerStyle Sie können nicht die Seite scrollen.

InformationsquelleAutor David Avikasis | 2015-11-12

Schreibe einen Kommentar