Во-первых, измените ваш ViewController.h на
#import <UIKit/UIKit.h>
@class AVAudioPlayer;
@interface ViewController : UIViewController
-(IBAction)PlayRandomSound;
@property (nonatomic, retain) AVAudioPlayer *soundPlayer;
@end
и первые строки ViewController.m на
#import "ViewController.h"
#import <AVFoundation/AVAudioPlayer.h>
@implementation ViewController
@synthesize soundPlayer = _soundPlayer;
-(IBAction)PlayRandomSound{
int randomNumber = arc4random() % 8 + 1;
NSURL *soundURL = [NSURL fileURLWithPath:[[NSBundle mainBundle]pathForResource:[NSString stringWithFormat:@"Sound%02d", randomNumber] ofType:@"mp3"]];
_soundPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:soundURL error:nil];
[_soundPlayer prepareToPlay];
[_soundPlayer play];
NSLog(@"randomNumber is %d", randomNumber);
NSLog(@"tmpFilename is %@", soundURL);
}
Редактировать: я только позже заметил, что вы не используете ARCпоэтому в этом коде есть небольшая утечка.Но это будет для начала.Возможно, вам следует установить для _soundPlayer значение nil при создании ViewController, а затем проверить: если это не nil: отпустите его и создайте новый, в противном случае просто создайте новый.Или вы можете перейти на ARC, если это новый проект.