Methode in der applicationWillResignActive aufrufen?

G

GENETIC4

Mitglied
Thread Starter
Dabei seit
01.08.2013
Beiträge
47
Reaktionspunkte
0
Grüß euch!

Könnt ihr mir erklären wie man eine eigene Methode aus dem eigenen ViewController in der applicationWillResignActive aus dem AppDelegate aufruft?

Danke im Voraus!

Mit freundlichen Grüßen
GENETIC4
 
Wie wäre es mit [[NSNotificationCenter defaultCenter] addObserver:self selector:mad:selector(magicMethod) name:UIApplicationWIllResignActive object: nil] ?
 
Ich glaube, dass ist nicht dass, was ich meine. In meinem Buch wird das so gemacht nur, dass es da irgendwie nicht funktioniert:

- (void)applicationWillResignActive : (UIApplication *)application

{
NSLog (@"Anwendung wird inaktiv...");

[self.viewController pause]; // Von "viewController" war irgendwie noch nie die Rede...
}

Die Methode pause ist bereits im Headerfile meines ViewControllers deklariert und im Implementationfile implementiert. Jetzt möchte ich sie von der AppDelegate aus aufrufen. Ich habe auch schon versucht, die Klasse des Viewcontrollers mit Hilfe von #import ""; bekannt zu machen aber das funktioniert auch nicht.
 
Welches Buch liegt denn vor dir?
 
iPhone- und Spiele entwickeln von Todd Moore (o'reillys basics)

Ich habe zuvor aber schon Einstieg in Objective-C 2.0und Cocoa (Galileo Press) gelesen.
 
ich würde mal sagen dein viewcontroller ist nicht initialisiert

wenn du ihn per self.viewController aufrufen willst, dann musst du im headerfile oder im interface der .m eine property haben
z.B.
@property (nonatomic, retain) UIViewController *viewController;
und in in der implementierung der .m ein @synthesize viewController

jetzt ist das nur deklariert aber noch nicht initialisiert
dafür musst du dann irgendwo noch (wenn du es im AppDelegate machst wohl am besten in der didfinishLaunchingWithOptions) die Initialisierung durchführen
in etwa so

viewController = [[UIViewcontroller alloc] init];


das kannst du aber auch ganz einfach rausfinden , ändere mal das

- (void)applicationWillResignActive : (UIApplication *)application
{
NSLog (@"Anwendung wird inaktiv...");

[self.viewController pause]; // Von "viewController" war irgendwie noch nie die Rede...
}

in folgendes um

- (void)applicationWillResignActive : (UIApplication *)application
{
NSLog (@"Anwendung wird inaktiv...");

if(viewcontroller) {
NSLog(@"initialisiert");
} else {
NSLog(@" nicht initialisiert");
}

[self.viewController pause]; // Von "viewController" war irgendwie noch nie die Rede...
}


aber ich würde wie Lichter auch schon geschrieben hat, das mit Notifications machen, in der AppDelegate hat das alles nix zu suchen
 
Danke! Jetzt funktionierts. :)
 
Zurück
Oben Unten