Wie erhalte ich Zugriff auf Variablen aus einer anderen Klasse?
Es ist wahrscheinlich eine sehr einfache Lösung für dieses, aber ich kann Sie nicht arbeiten.
Ich habe mehrere Klassen in meiner Kakao-Datei. In einer der Klassen class1
ich eine variable erstellen, die ich in einer anderen Klasse class2
als gut. Gibt es eine einfache Möglichkeit zu importieren, diese variable in class2
?
- "Ich habe mehrere Klassen in meiner Kakao-Datei." Der übliche Weg ist zu erstellen, ein paar Dateien (MyClass.h, MyClass.m) für jede Klasse. Sie können dies tun, indem Sie mit der rechten Maustaste auf eine Gruppe im Projekt und klicken Sie auf Datei Hinzufügen. Erstellen Sie das .m, und die .h kommen zusammen, für Sie kostenfrei.
- Direkter Zugriff auf Instanz-Variablen ist eine sehr schlechte Idee. Verwenden Sie Eigenschaften, und entweder zu synthetisieren, die Accessoren oder schreiben Sie Ihre eigenen. Direct variable access bricht Dinge wie KVO und Bindungen auf Mac OS X, und es ist nicht gut OO der Praxis.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie entweder die variable public machen, oder es in eine Immobilie. Zum Beispiel, öffentlich machen:
Zu machen, eine Eigenschaft:
Könnten Sie setzen die variable wird in class2 als Eigenschaft. Falls class1 eine Referenz auf class2 class1 können Sie dann die variable. Ehrlich gesagt, obwohl, es klingt so als wenn du ein Anfänger bist, sowohl Objective-C und objektorientierte Programmierung. Ich empfehle Ihnen, Lesen Sie mehr über die beiden.
Hier ist ein Ort, zu starten für die Objekt-orientierte Programmierung mit Objective-C.
versuchen, eine Datei, die hält Ihre Variablen zugegriffen werden muss, die überall in der app.
und in der GlobalVariables.m-Datei hinzufügen
Dann so lange, wie Sie importieren GlobalVariables.h, in die je .m-Dateien benötigen Sie den Zugriff auf die variable, in die Sie zuweisen können, und den Zugang überall in Ihrem Programm.
BEARBEITEN
Meiner Antwort die ich oben gegeben habe, ist anders nicht der Weg, den ich gehen würde, über das tun dies jetzt.
Es wäre mehr wie
dann in der .m-Datei
Dann in einer anderen Klasse eine Methode haben, würde ich
In "XCode" Sie müssen importieren, Objekt erstellen, indem Sie deklarieren es als Eigentum, und verwenden Sie dann "Objekt.variable" syntax. Die Datei "Class2.m" Aussehen würde, in der folgenden Weise:
Dank! 🙂