Ich verstehe nicht so richtig Dein Problem.
Die Objekte von Interesse werden instanziiert sein. Also musst per Getter auf die Variable der gewünschten Instanz zugreifen.
Über Setter sind diese entsprehend zu ändern.
Ergebnis 1 bis 7 von 7
-
21.12.2012, 13:09 #1Gala
Themenstarter
- Registriert
- 05.2012
- Beiträge
- 53
Wie greife ich auf Objekte anderer Klassen/Header zu?
Hallo!
Ich habe folgendes Problem:
Ich möchte für meine iPhone-App eine Statistik erstellen. Im StatistikViewController befinden sich einige Labels, in denen dann später z.B. Punktzahlen stehen sollen.
Doch wie greife ich vom normalen ViewController auf diese Labels zu?
Wie kann ich die Werte dieser ändern, indem ich z.B. einen Button im normalen ViewController drücke?
Danke schonmal im Vorraus,
IceCake
-
21.12.2012, 14:06 #2[Hier Liste mit Apple-Produkten denken]
-
21.12.2012, 14:07 #3Raisin Rouge
- Registriert
- 05.2004
- Beiträge
- 1.187
Du definierst im StatistikViewController eine öffentliche Schnittstelle (also z.B. geeignete Methoden oder Properties), mit denen eine andere Klasse auf die Labels (wahrscheinlich meinst Du TextFields oder deren Werte?) zugreifen kann.
-
21.12.2012, 21:13 #4Gala
Themenstarter
- Registriert
- 05.2012
- Beiträge
- 53
Sorry aber ich bin noch quasi Anfänger...

Was meinst du mit"öffentlicher Schnittstelle"?
-
21.12.2012, 23:04 #5
Pseudocode:
Du brauchst einen Getter, der von anderen Objekten außerhalb der Klasse abgefragt werden kann, also öffentlich ist.Code:public int getRichtigeAntworten() { return this.anzahlRichtigeAntworten; }[Hier Liste mit Apple-Produkten denken]
-
24.12.2012, 18:52 #6
Also falls ich deine Problemstellung richtig verstanden habe...
1. Deine Labels initialisieren, also am einfachsten properties erstellen.
2. In dem ViewController wo du z.B. einen Button drückst, die .h Datei des ViewControllers wo die Label Properties initialisiert sind, importieren.
3. Dann eine Instanz des anderen ViewControllers anlegen z.B. -> MyViewController *myVC = [[MyViewController alloc] init];
4. Dann kannst du z.B. mit -> myVC.label1.text = @"myText"; etc. Auf deine Labels zugreifen.Geändert von GoodGuy (24.12.2012 um 18:55 Uhr) Grund: Vervollständigung
Programming is like sex, if you spend more time doing it than watching TV, people think you're some kind of freak.
-
29.12.2012, 19:13 #7Gala
Themenstarter
- Registriert
- 05.2012
- Beiträge
- 53
Ja, ich denke dass war es, was ich gesucht habe. Werde es morgen testen, wenn ich nach Hause kome... Danke für alle Antworten!
Gruß, IceCake


zitieren