2016-04-13 8 views
0

Ich habe eine UIViewController, die eine UIScrollView und eine benutzerdefinierte hält UIViewController (nennen wir, dass CustomVC)iOS Ereignispropagierung in UIViewController

Die CustomVC die Scroll abdeckt und Interaktion ermöglicht. Bei Berührungsereignissen Wie kann ich das Ereignis zurück an die UIScrollView weitergeben?

+2

Sie können einen Treffertest innerhalb einer Ansicht überschreiben, aber nicht einen Ansichtscontroller, da Berührungsereignisse ** von einer Ansicht zu jeder Unteransicht ** nach unten weitergegeben werden und nicht von einer Unteransicht zu jeder übergeordneten Ansicht. Anstatt einen benutzerdefinierten UIViewController über addChildViewController zu verwenden, sollten Sie stattdessen eine benutzerdefinierte UIView erstellen. Vielleicht mehr Informationen würde helfen, Ihre Ziele mit einem Kind-View-Controller zu klären – SushiHangover

+0

Das ist wirklich hilfreiche Informationen. Ich denke, ich werde genau das tun, stattdessen nur eine UIView erstellen. Ich bin immer noch nicht sicher, was der Unterschied zwischen einem VC und nur einer Ansicht ist. hatte den Eindruck, dass ein VC mit der gesamten Steuerlogik umgehen sollte und View nur zum Zeichnen gedacht ist. – WindowsMaker

+0

Hier ist die beste (klarste) Beschreibung von Hit-Tests auf iOS, die ich je gesehen habe, es hat ObjC-Codeschnipsel, die leicht konvertiert werden können C#, aber die Diagramme und Textbeschreibungen sind viel besser als alles, was Apple veröffentlicht hat @ http://smnh.me/hit-testing-in-ios/ – SushiHangover

Antwort

0

Sie müssen das Ereignis manuell von CustomVC an die Ansicht des übergeordneten Viewcontrollers senden.

Verwandte Themen