Wie scrolle ich mit mehreren UIScrollViews?

8

Ich habe 2 UIScrollViews, die jeweils ein Bild anzeigen (Übersichts- und Zoommodus). Ich kann in beiden Ansichten bereits einzeln blättern, jetzt möchte ich den Mittelpunkt beider Ansichten synchron halten.

Ich denke, wenn eine der Ansichten Ereignisse erzeugt, muss ich sie auch an die andere Ansicht weiterleiten, ich kann einfach nicht herausfinden, welche Funktionen relevant sind. Irgendwelche Hinweise?

edit: Wenn paralleles Live-Scrollen nicht möglich ist, möchte ich nach einem Scroll-Event zumindest synchronisieren.

    
Daniel Brown 14.12.2011, 15:06
quelle

2 Antworten

15

Sieh dir die Funktionen an

Sie können dies in der Delegate-Methode verknüpfen - scrollViewDidScroll: , das ständig aufgerufen wird, während der Benutzer scrollt.

    
Richard J. Ross III 14.12.2011, 15:12
quelle
3

Dies ist nicht spezifisch für die Anforderung, sondern hilft bei der Synchronisation von scrollViews zwischen verschiedenen Klassen.

Um scrollViews zwischen verschiedenen Klassen zu synchronisieren, verwenden Sie NSNotificationCenter, um nach einer bestimmten Benachrichtigung zu suchen.

Wenn scroll auftritt, verwenden Sie innerhalb der Delegate-Methode -scrollViewDidScroll: NSNotificationCenter , um die Benachrichtigung zu posten (mit Inhalten userInfo als ) scrollView.contentOffset.x & amp; scrollView.contentOffset.y ) Beispiel:

%Vor%

Registrieren Sie sich für diese Benachrichtigung in derselben Klasse oder einer anderen Klasse und führen Sie die -setContentOffset: -Methode für die ScrollViews aus, die Sie synchronisieren möchten.
.
Beispiel für das Hinzufügen von Observer (entweder in didLoad oder init oder an einer Stelle, die für Sie in so vielen Klassen geeignet ist, wie Sie möchten):

%Vor%

.
Beispiel für die Selektormethode

%Vor%     
staticVoidMan 09.10.2013 10:47
quelle

Tags und Links