Ich habe drei verschiedene Ansichten auf dem iPhone. Ich wechsele erfolgreich zwischen verschiedenen Ansichten, aber ich möchte auf die Variable der ersten Ansicht in der ViewDidLoad-Methode der zweiten Ansicht zugreifen, aber ich kann sie nicht bekommen, also bitte hilf mir dabei.Zugriff auf eine UIView Mitgliedsvariable von einer anderen UIView
0
A
Antwort
1
Sie benötigen einen Verweis auf die erste Ansicht des zweiten. Wenn Sie die zweite Instanz instanziieren, implementieren Sie eine Nachricht, die die erste Ansicht erhält und eine Referenz darauf speichert.
Lassen Sie mich darauf hinweisen, dass es besser ist, ViewController Muster zu verwenden, um Daten und Verhalten von einer Ansicht zu einer anderen zu koordinieren.
1
zwei Subklassen von UIView Mit erklärt wie folgt:
@interface ViewOne : UIView {
NSString *someVar;
}
@property (nonatomic, copy) NSString *someVar;
@end
@interface ViewTwo : UIView {
NSString *referenceToSomeVar;
}
@property (nonatomic, retain) NSString *referenceToSomeVar;
@end
Sie könnten die im Anschluss an die Referenz tun, um die „someVar“ Variable aus der ersten Ansicht
ViewOne *view1 = [[ViewOne alloc] init];
view1.someVar = @"This is the original variable";
ViewOne *view2 = [[ViewOne alloc] init];
view2.referenceToSomeVar = view1.someVar;
0
ich etwas zu dem hinzufügen möchten Code oben veröffentlicht. Stellen Sie sich vor, Sie möchten die Variable von ViewOne verwenden und sie einer zweiten Variablen in ViewTwo zuweisen.
@interface ViewOne : UIView {
BOO someVar;
}
@property (readwrite) someVar;
@end
@interface ViewTwo : UIView {
BOO referenceToSomeVar;
}
@property (readwrite) BOO referenceToSomeVar;
@end
So haben Sie
ViewOne *view1 = [[ViewOne alloc] init];
view1.someVar = TRUE;
Im SecondView .m
referenceToSomeVar = view1.someVar;
Verwandte Themen
- 1. eine UIView
- 2. UiView Transition in UIView
- 3. Elemente auf UIView hinter modal UIView deaktivieren
- 4. Mehrere UITableViews auf einer UIView
- 5. Zugriff auf alle Tasten in einer UIView auf dem iPhone
- 6. Zugriff auf die UIView-Breite zur Laufzeit
- 7. Wechseln zu einer anderen UIView, innerhalb TabBar
- 8. Wie bekomme ich Zugriff Unteransicht von UIView?
- 9. Zeiger auf CCLayer von UIView
- 10. Seltsames Verhalten beim Animieren einer UIView mit [UIView animateKeyframesWithDuration]
- 11. Touch-Ereignis auf UIView
- 12. AirPrint Inhalt einer UIView
- 13. Reagieren Sie auf ApplicationWillEnterForeground in einer UIView
- 14. Zeichnung außerhalb einer UIView
- 15. Wie auf UIView ziehen
- 16. Übergeben von Touch-Informationen an UIScrollView unter einer anderen UIView
- 17. eine CAShapeLayer Maske auf eine UIView Anwendung
- 18. uiscrollview innerhalb einer uiview
- 19. Abgerundete Ecken auf UIView
- 20. Einen UIViewController von einer UIView schieben
- 21. TTThumbsViewController auf einem UIView
- 22. exklusive Touch funktioniert nicht auf einer UIView und mehrere Bildansicht als Unteransicht auf UIView
- 23. Bild von UIView
- 24. Erstellen einer Kopie einer UIView in Swift
- 25. Benutzerdefinierte Rundung Ecken auf UIView
- 26. Flex: Zugriff auf Mitgliedsvariable durch Verwendung einer Variablen im Namen
- 27. Label von bestimmten UIView ausblenden?
- 28. Öffnen von UINavigationController UITable von einer einfachen UIView
- 29. Swift: Verschiebe UIView auf Schiebegeste.
- 30. Synchronisieren von UIView-Animationen
Dank für die Wiedergabe in ViewOne .m setzen, aber ich habe alles, was ich bekommen kann immer noch nicht fertig. –
können Sie einen Code bereitstellen? Ich weiß, wie man das erreicht, was man versucht, aber ich weiß nicht, ob es derselbe Weg ist, den man nimmt. –
ok Ich habe den Code meines Problems –