Wie bekomme ich einen UIViewController von einer UIView über den Code [duplizieren]

7

Es gibt eine Möglichkeit, eine View-Controller-Referenz von einem UIView -Objekt zu erhalten? Ich brauche so etwas:

%Vor%     
reinaldoluckman 02.03.2010, 22:29
quelle

5 Antworten

16

Sie können dazu die Methode -nextResponder verwenden. Laut Ссылка , "UIView implementiert diese Methode durch Zurückgeben des UIViewController-Objekts, das es verwaltet (falls es eins hat) oder seiner Superview (falls nicht)"

    
user102008 22.01.2011, 21:38
quelle
5

UIView hat standardmäßig keinen Bezug zu UIViewController. Sie können es Ihrer UIView-Unterklasse hinzufügen und beim Erstellen von UIView in UIViewController festlegen.

Wenn Sie nach dem übergeordneten Element des Viewcontrollers suchen, hat jeder UIViewController die Eigenschaft parentViewController , aber wenn Sie von UIView darauf zugreifen möchten, müssen Sie zuerst zu Ihrem UIViewController gelangen.

Sie können ein Beispiel sehen, wie Sie einen Verweis auf Ihren UIViewController in Ihrer Unterklasse von UIView erstellen und wie / wo Sie ihn in View Controller-Programmierhandbuch für iPhone , siehe Abschnitt Programmgesteuertes Erstellen in Definieren Sie eine benutzerdefinierte View-Controller-Klasse . Im folgenden Beispiel finden Sie weitere Details im verknüpften Metronome-Beispiel.

%Vor%

In der Kopfzeile:

%Vor%     
stefanB 02.03.2010 22:47
quelle
2

Sie können

verwenden %Vor%     
Upendar Gareri 10.04.2013 12:12
quelle
1

Sie sollten den Verweis auf den View-Controller nicht speichern, da er sich dynamisch ändern kann. Durchquere die Responder-Kette jedes Mal, wenn du sie brauchst.

    
Rivera 24.05.2012 00:17
quelle
1

Sie können Folgendes verwenden:

%Vor%     
Rabi 28.02.2014 11:06
quelle