Frage

so habe ich diese Variable in meinem Delegaten namens AppDelegate.h:

AVAudioPlayer *introSound;

Es spielt kontinuierlich während der ersten Last.

[introSound stop];

Was soll ich tun ist, es von einem separaten Controller zu stoppen, firstController.m.

Ich habe versucht,

[AppDelegate.introSound stop];

aber es warf einen Fehler zu sagen:

Fehler: erwartet ':' vor '' Token

Was ist der Grund dafür?

War es hilfreich?

Lösung

Ich nehme an, Sie einen Compiler-Fehler bedeuten? AppDelegate bezieht sich auf die Klasse, nicht auf die Instanz der Klasse, die Ihre Anwendung delegieren ist. Um das von jedem Ort, dies zu tun:

AppDelegate *appDelegate = [[UIApplication sharedApplication] delegate];
[appDelegate.introSound stop];

Sie müssen auch sicherstellen, dass introSound eine Eigenschaft ist, nicht nur eine Instanzvariable von AppDelegate.

Andere Tipps

Mit dieser Art und Weise fangen Videos / Audios in einfachen und best.do diesen

NSMutableURLRequest *request1 = [[[NSMutableURLRequest alloc] init] autorelease];
[request1 setHTTPMethod:@"GET"];
NSError *error;
NSURLResponse *response;

NSString *documentFolderPath = [NSHomeDirectory() stringByAppendingPathComponent:@"Documents"];
NSFileManager *fileManager1 = [NSFileManager defaultManager];
NSString *videosFolderPath = [documentFolderPath stringByAppendingPathComponent:@"videos"]; 
//NSString* videosFolderPath = [@"~/Documents/bar.mp3" stringByExpandingTildeInPath];
NSLog(@"video  path:%@",videosFolderPath);
//Check if the videos folder already exists, if not, create it!!!
BOOL isDir;
if (([fileManager1 fileExistsAtPath:videosFolderPath isDirectory:&isDir] && isDir) == FALSE) {
    //[[NSFileManager defaultManager] createDirectoryAtPath:videosFolderPath attributes:nil];
    [fileManager1 createDirectoryAtPath:videosFolderPath withIntermediateDirectories:YES attributes:nil error:nil];
}
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top