2011-04-04 77 views
0

我目前正在加载一个音频文件的按钮。我假设有一种更有效的方式来加载这个文件,而不是每次按下按钮。这应该在哪里加载?全局,在viewdidload内部。我像下面的代码一样加载它。iPhone加载音频文件问题

NSString *path = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"mp3"]; 
    AVAudioPlayer* theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
    theAudio.delegate=self; 

回答

1

viewDidLoad是一个好主意 - 如果内存不足,将允许您在viewDidUnload中释放内存。你也可以通过合成音频和使用self来在下面的代码中实现getter和setter。TheAudio

@interface myClass { 
    AVAudioPlayer *theAudio; 
} 

@implementation myClass { 

- (void) viewDidLoad { 
    NSString *path = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"mp3"]; 
    theAudio=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
    theAudio.delegate=self; 
} 

- (void) viewDidUnload { 
    [theAudio release]; 
} 
} 
+0

谢谢,这工作得更好 – Vikings 2011-04-04 16:36:31