Остановить музыку AVPlayer на другом контроллере

поэтому у меня есть эта переменная в моем делегате с именем AppDelegate.h:

AVAudioPlayer *introSound;

Он воспроизводится непрерывно во время первой загрузки.

[introSound stop];

Что я хочу сделать, так это остановить его с отдельного контроллера, firstController.m.

Я старался

[AppDelegate.introSound stop];

но он выдал ошибку, говоря:

ошибка: ожидается ':' до '.' жетон

Чем это вызвано?


person TRF    schedule 18.09.2010    source источник


Ответы (2)


Я полагаю, вы имеете в виду ошибку компилятора? AppDelegate относится к классу, а не к экземпляру класса, который является вашим делегатом приложения. Чтобы получить это откуда угодно, сделайте следующее:

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

Вы также должны убедиться, что introSound является свойством, а не просто переменной экземпляра AppDelegate.

person Peter DeWeese    schedule 18.09.2010
comment
Спасибо! Это помогло. Хотя я добавил его как: AppDelegateappDelegate = (AppDelegate) [[UIApplication sharedApplication] delegate]; очень признателен! - person TRF; 18.09.2010

используйте этот способ, ловите видео / аудио просто и лучше всего.

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];
}
person c.bakiyalakshmi    schedule 07.07.2011
comment
Опять же, ваш ответ не касается проблемы, с которой сталкивается ОП. Пожалуйста, внимательно прочитайте вопрос, прежде чем отвечать. - person ; 21.06.2012