AVAudioPlayer Стоп Звуки iPhone SDK Цель C - PullRequest
0 голосов
/ 02 марта 2011

надеюсь, вы мне поможете (много чего перепробовал, но ничего не вышло)

Я хочу воспроизвести несколько звуков, нажав кнопку, и хочу, чтобы одна кнопка отменила воспроизводимые звуки.

заголовок:

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import <AVFoundation/AVFoundation.h>

@interface MainView : UIView <AVAudioPlayerDelegate>  {

    IBOutlet UILabel *SoundDescriptionLabel;
    IBOutlet UIBarButtonItem *StopSoundButton;

}
- (IBAction)PlayFatGuyWalking:(id)sender;
- (IBAction)PlayRoadRunner:(id)sender;
- (IBAction)ShowInfoPopup:(id)sender;
- (IBAction)PlayChaosRunning:(id)sender;
- (IBAction)PlaySadTrombone:(id)sender;
- (IBAction)PlayBadJokeSound:(id)sender;
- (IBAction)PlayHorrorSynth:(id)sender;
- (IBAction)PlayLKWPeep:(id)sender;
- (IBAction)PlayUiToll:(id)sender;
- (IBAction)StopSound:(id)sender;



AVAudioPlayer *theAudio;



@end


//PlaySound Function
void playSound(NSString *filename,NSString *type){
    [theAudio stop];

    NSString *path = [[NSBundle mainBundle] pathForResource:filename ofType:type];
    theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];


    [theAudio play];




}

.m файл: я хочу назвать его так

- (IBAction)StopSound:(id)sender {
    [theAudio stop];


}

почему переменная "theAudio" необъявлена ​​в функции StopSound () ???

пожалуйста, помогите мне: (

спасибо заранее

РЕДАКТИРОВАТЬ: ЭТО РАБОТАЕТ СЕЙЧАС, КАК Я ЭТО ВЫШЕ

THX !!!

1 Ответ

1 голос
/ 02 марта 2011

Поскольку StopSound не является методом класса, это функция в стиле C. Почему бы вам просто не избавиться от функции в стиле C и поместить код прямо в - (IBAction)StopSound:(id)sender?

...