Hinzufügen von UIScrollView zu einem UIViewController

8

Ich habe ein UIViewController , und ich möchte ein UIScrollView hinzufügen (Scroll-Unterstützung aktivieren), ist es möglich?

Ich weiß, dass es möglich ist, wenn Sie ein UIScrollView haben, um ein UIViewController hinzuzufügen, aber ich bin auch interessiert, wenn Reverse wahr ist, wenn ich ein UIScrollView zu einem bestehenden UIViewController hinzufügen kann , so dass ich Scroll-Funktion bekomme.

Bearbeiten

Ich denke, ich habe eine Antwort gefunden: Hinzufügen eines UIViewControllers zu UIScrollView

    
user1903992 27.12.2012, 14:06
quelle

1 Antwort

20

Ein UIViewController hat eine view -Eigenschaft. Sie können also UIScrollView zu view hinzufügen. Mit anderen Worten, Sie können die Bildlaufansicht zur Ansichtshierarchie hinzufügen.

Dies kann durch Code oder über XIB erreicht werden. Darüber hinaus können Sie den Ansichtscontroller als Delegat für die Bildlaufansicht registrieren. Auf diese Weise können Sie Methoden zum Ausführen verschiedener Funktionalitäten implementieren. Siehe UIScrollViewDelegate Protokoll.

%Vor%

Sie können auch loadView method für UIViewController class überschreiben und die Bildlaufansicht als Hauptansicht für den Controller festlegen, den Sie in Betracht ziehen.

Bearbeiten

Ich habe eine kleine Probe für Sie erstellt. Hier haben Sie eine Bildlaufansicht als Kind der Ansicht von UIViewController . Die Bildlaufansicht hat zwei Ansichten als untergeordnete Elemente: view1 (blaue Farbe) und view2 (grüne Farbe).

Hier können Sie wahrscheinlich nur in eine Richtung scrollen: horizontal oder vertikal. Wenn Sie im Folgenden horizontal blättern, können Sie sehen, dass die Bildlaufansicht wie erwartet funktioniert.

%Vor%

Wenn Sie nur vertikal blättern müssen, können Sie wie folgt ändern:

%Vor%

Offensichtlich müssen Sie die Position von view1 und view2 neu anordnen.

P.S. Hier verwende ich ARC. Wenn Sie ARC nicht verwenden, müssen Sie explizit release alloc-init-Objekte angeben.

    
Lorenzo B 27.12.2012, 14:12
quelle