Warum scrollt UIScrollView nach dem Hinzufügen von Objekten nicht vollständig? Verwenden von Storyboard, ARC und Xcode 4.5.2

8

Also, ich weiß, dass es ähnliche Fragen für mich gibt, aber vielleicht nicht genau (also bitte nicht mich abmelden - nur warnen Sie mich oder etwas). Ich habe Tage nach der Lösung für dieses EINFACHE Problem gesucht. Mit Storyboards, ARC und Xcode 4.5.2 muss ich einfach eine Reihe von Labels in eine UIScrollView einfügen und sie vertikal scrollen lassen. Ich habe so viele Kombinationen von Rahmengrößen und Inhaltsgrößen in viewDidLoad, viewDidAppear und viewWillAppear versucht, aber ohne Erfolg. Die Bildlaufansicht wird perfekt gescrollt, wenn sich darin nichts befindet. Wenn ich jedoch Beschriftungen hinzufüge, scrollt das Bildlauf nur einen sehr kurzen Abschnitt.

Hinweis: Ich muss das automatische Layout verwenden, sonst wird mein gesamtes Projekt durcheinander gebracht.

Hier ist mein aktueller Code ...

.h-Datei:

%Vor%

.m-Datei:

%Vor%

Hinweis: Das Auskommentieren von viewWillAppear hat keinen Unterschied gemacht.

BEARBEITEN: Ich habe die folgende Lösung veröffentlicht. HOFFNUNG, ES HILFT ANDEREN!

    
LargeGlasses 29.12.2012, 00:08
quelle

3 Antworten

39

Nach einigen Tagen der Recherche ist es lustig, dass ich die Lösung nur wenige Minuten nach der Veröffentlichung dieser Frage gefunden habe! Also, für meine Situation musste ich einfach diesen Code hinzufügen, und es funktionierte:

%Vor%

Es scheint jetzt perfekt zu funktionieren. Bitte, jemand, lassen Sie mich wissen, wenn dies eine schlechte Art ist, es zu tun, weil ich neu bin und ich würde jede Hilfe lieben. Ansonsten werde ich es verlassen und hoffe, dass dies anderen Menschen helfen kann! Danke!

    
LargeGlasses 29.12.2012, 00:30
quelle
3

LÖSUNG mit Storyboard + Autolayout (kein Code):

Vertikales Scroll-Beispiel, das von der oberen linken Ecke beginnt:

  • Legen Sie die top + leading Einschränkungen des ersten Objekts (Teilansicht) fest
  • Verknüpfen Sie jedes Objekt bis zum letzten
  • Die wichtigsten - legen Sie die untere Einschränkung für die Bildlaufansicht fest, sodass sie von oben nach unten verbunden ist.
  • Setze width der Bildlaufansicht - entweder eine bestimmte "magische Zahl" oder einen besseren Weg - verbinde die nachlaufende Einschränkung einer Teilansicht mit einer festgelegten Breite - wenn es nicht geht, setze ich normalerweise die Breite einer Beschriftung = Bildschirmbreite - Seitenpolster = & gt; standard (20) + UILabel (280) + standard (20) - auf diese Weise kennt die Bildlaufansicht genau die Breite des Inhalts. Ich bekomme eine Warnung "mehrdeutige Breite".

* Erfordert Einschränkungen, wenn das horizontale Scrollen gewünscht wird.

    
Islam Q. 09.08.2014 05:39
quelle
2

Der Rahmen Ihrer Scrollview ist nicht scrollbar.

Überprüfen Sie die contentSize

Setzen Sie frame auf seine superview.bounds und setzen Sie dann die Inhaltsgröße auf den scrollbaren Bereich der scroolview.

Ich weiß auch nicht, dass der Hintergrund scrollen wird.

Sie möchten Unteransichten zur Scrollview selbst hinzufügen.

Es sollte seine eigenen Unteransichten scrollen. aber es wird nicht selbst scrollen:)

    
The Lazy Coder 29.12.2012 00:14
quelle