2014-10-22 6 views
8

Ich habe ein Problem mit einem UIPageViewController. Wenn ich zu einer neuen Seite blättern gehe, ist der neue View-Controller hinter der Statusleiste während ich scrolle. Nach dem Scrollen positioniert sich der View-Controller unter der Statusleiste.UIPageViewController: Child Controller ignorieren Statusleiste Höhe beim Scrollen

Ich benutze Storyboard (Universal). UIPageViewController hat Attribut Extend Edges: Under Top Bars. Was vermisse ich?

enter image description here

  • gesetzt automaticallyAdjustsScrollViewInsets auf false hat nicht funktioniert
  • Verwendung von edgesForExtendedLayout = UIRectEdge.None nicht funktioniert entweder
  • einige offene Fragen hier aber keine Antworten (link)

UPDATE

Ein weiterer Grund für das Springen sind 'Margins' von 'Constraints' (found here). Stellen Sie sicher, dass Sie deaktivieren Sie Ränder, wenn Sie Einschränkungen verwenden (rechts Dialogfeld). Sie können sie später in den Dienstprogrammen (linkes Dialogfeld) entfernen. Überprüfen Sie beide verbundenen Ansichten!

In meinem Fall der UIPageViewController Behälter hatte eine Top Space of 0 Einschränkung seiner Superview:

enter image description here

+0

Nur über genau das gleiche Problem gestolpert und immer noch keine Antwort gefunden :(Bitte lassen Sie mich wissen, wenn Sie es funktioniert –

+0

Ich kann es nicht reproduzieren, alle Seiten sind hinter Statusleiste unabhängig von Scrollen oder nicht, Wenn ich das Original-Y von pageViewController auf 20 setze, sind nicht alle Seiten dahinter. Ein Beispielprojekt wird helfen. – gabbler

Antwort

4

ich nur eine mögliche Lösung gefunden. Die Superview war der Root-Container, der die Statusleiste enthält.

Ich habe den Wert von Top Space auf 20 geändert, was höher ist als die Statusleiste. Jetzt werden die Ansichten unterhalb der Statusleiste nicht verschoben, da sie bereits vorhanden sind.

Hoffe, dass hilft!

Verwandte Themen