Я очень новичок в разработке ios, и я пока не знаю, какие ошибки отображаются на консоли.IOS - Завершение приложения из-за неперехваченного исключения 'NSInvalidArgumentException: нераспознанный селектор, отправленный в экземпляр 0x7a9a2c0'
Это ошибка:
Нагрузочного приложение из-за неперехваченное исключение 'NSInvalidArgumentException', причина: '- [NVViewController Play]: непризнанный селектор направлен например 0x7a9a2c0'
Я положил свой код ниже, ошибка возникает, когда я касаюсь кнопки воспроизведения.
#import "NVViewController.h"
@implementation NVViewController
@synthesize reproductor;
- (void)viewDidLoad
{
[super viewDidLoad];
NSError* error;
NSString* ruta = [[NSBundle mainBundle] pathForResource:@"BackgroundMusic" ofType:@"mp3"];
NSURL* url = [[NSURL alloc] initFileURLWithPath:ruta];
self.reproductor = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
[self.reproductor prepareToPlay];
}
- (void)didReceiveMemoryWarning
{
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
- (IBAction)playBackgroundMusic:(id)sender {
[self.reproductor play];
}
- (IBAction)stopBackgroundMusic:(id)sender {
[self.reproductor stop];
}
@end
и заголовок.
@interface NVViewController : UIViewController
@property (nonatomic,strong) AVAudioPlayer * reproductor;
- (IBAction)playBackgroundMusic:(id)sender;
- (IBAction)stopBackgroundMusic:(id)sender;
@end
Спасибо.
попробуйте поставить self.reproductor = [[AVAudioPlayer alloc] initWithContentsOfURL: ошибка URL: & error]; в playBackgroundMusic перед тем, как [self.reproductor play]; –
Я бы предложил просто попробовать [воспроизводить игру]; вместо себя. По какой-то причине ваш код вызывает метод NIViewController (self) вместо объекта AVAudioPlayer. –
Вы должны поместить код из NVViewController, который также использует self.reproductor, потому что в другом месте вы можете настроить self.reproductor для объекта NVViewController. –