2016-08-05 29 views
1

Ich versuche eine Ansicht mit zwei Unteransichten, einer statisch positionierten Ansicht und einer Bildlaufansicht zu erstellen. Der Bildlauf hat eine Anfangsposition, bei der der obere Teil des Inhalts den unteren Rand der statischen Ansicht erreicht, aber er kann den gesamten Bildschirm einnehmen und die statische Ansicht beim Scrollen überlappen.Eine Ansicht mit statischen und scrollenden Unteransichten implementieren

So etwas wie der App Store auf iPhone Plus-Geräten, außer der Scrollview scrollt über die statische Ansicht und nicht darunter.

App Store on iPhone 6s Plus

Ich versuche, eine Scrollview mit einem contentOffset gleich der Höhe der statischen Ansicht verwenden. Während dies den Trick visuell macht, bricht es Toucheingabe. Alle Berührungen, die selbst im Bereich contentOffset vorgenommen werden, d. H. Der Teil, der die statische Ansicht zeigt, wird an die Bildlaufansicht gesendet, nicht an die statische Ansicht.

Jede Problemumgehung wäre genauso gut, wie jede alternative Konfiguration von Ansichten. Alles, was ich will, ist eine statische Ansicht und eine Scroll-Ansicht, die darüber scrollt, andere Implementierungen sind auch in Ordnung.

Danke!

Antwort

0

Okay, was möglich ist, ist, dass Sie stattdessen ein TableView verwenden können.

1) Ihre statische Ansicht wird sich an der gleichen Position befinden wie jetzt. Der Frame-Ursprung der TableView ist identisch mit der statischen Ansicht.

2) Geben Sie die Höhe der ersten Zelle der tableView wie die Höhe der statischen Ansicht an.

3) Fügen Sie keine Ansicht in die erste Zelle der Tabellenansicht hinzu und geben Sie ihre Hintergrundfarbe als klare Farbe an.

4) Kopfhöhe des Tableview sollte 0

seine Oder Wenn Sie Tasten in statischer Sicht haben, dass im Hinblick auf Ihre leere Zelle hinzufügen und diese Ansicht entfernen, wenn Tableview gescrollt wird. Ich denke, das kann zu deiner Wunschansicht führen.

+0

Würde die erste Zelle der Tabellenansicht (die leere) trotzdem keine Berührungsereignisse erhalten? –

+0

Leider werden sie nicht. –