Ich habe eine UIScrollView, die ich eingerichtet habe, um jeweils eine Spalte zu streichen (zwei Spalten pro Seite) - indem ich den Rahmen auf die Hälfte der tatsächlichen Ansichtsbreite setze, clipToBounds auf NO setze und hitTest verwende, um den Bereich außerhalb zu deklarieren des Rahmens als UIScrollView (siehe Beispiel unten).
Das funktioniert gut, aber mein Problem ist jetzt, dass die Untersichten von UIScrollView keine Berührungsereignisse erhalten - nur die Haupt-UIScrollView.
Wenn im folgenden Beispiel der hitTest
-Code enthalten ist, scrollt die Scrollansicht korrekt, blättert Spalte für Spalte und der gesamte Inhalt wird angezeigt - aber die inneren Scrollviews empfangen keine Berührungsereignisse.
Wenn ich den hitTest
-Code lösche, erhält nur die erste untergeordnete scrollview Berührungen, und sein gesamter Inhalt kann gesehen werden - aber die Hauptscrollansicht erhält Berührungen im nicht abgeschnittenen Bereich nicht.
Wie kann ich das lösen?
Beispiel:
%Vor% Aktualisieren
Ich bekomme die Berührungen zur inneren Ansicht, indem ich Folgendes tue, aber sicher muss es einen besseren Weg geben?
Das könnte funktionieren:
%Vor%Aber wenn die Unteransicht außerhalb der Scrollview-Grenzen liegt, wurden keine Ereignisse ausgelöst und diese Funktion gibt self.scrollView zurück.
Tags und Links iphone ipad uiscrollview