Piano

2016-04-13 59 views
0

Dokunma olayı üzerinde medya oynatmak istiyorum. Benim uygulamada 4 düğme var. Kullanıcı 1. parmağınızı kullanarak 1. düğmesine tıkladıktan sonra, play1 müziği1 düğmesini başlatmak istiyorum. 2. parmağınızı kullanarak 2. düğmeye basınız ve daha sonra play2 müziği2 düğmesine basmayı isteyiniz (hala kullanıcı 1. parmağını serbest bırakmamıştır). 3ncü parmağı kullanarak 3 numaralı tuşa basınız ve ardından play3'ü 3 tuşuyla başlatmak istiyorsanız (hala kullanıcı 1.2. parmağını serbest bırakmıyor). Bunu nasıl uygulayabilirim? Bunun hakkında hiçbir fikrim yok. Lütfen bana yardım edin.Piano

AVAudioPlayer'ı kullanarak yalnızca müzik çalmayı biliyorum. peşin

yılında

Teşekkür

cevap

0

Bu kod benim için çalışıyor. ViewController.h

#import <UIKit/UIKit.h> 
#import <AVFoundation/AVFoundation.h> 
#import <AudioToolbox/AudioServices.h> 

@interface ViewController : UIViewController 
{ 
    NSString *filePath; 
} 
@property(strong,nonatomic) AVAudioPlayer *playerAudio1; 
@property(strong,nonatomic) AVAudioPlayer *playerAudio2; 
@property(strong,nonatomic) AVAudioPlayer *playerAudio3; 
@property(strong,nonatomic) AVAudioPlayer *playerAudio4; 
-(IBAction)btnDownload:(id)sender; 
-(IBAction)btn1_DownAction:(id)sender; 
-(IBAction)btn2_DownAction:(id)sender; 
-(IBAction)btn3_DownAction:(id)sender; 
-(IBAction)btn4_DownAction:(id)sender; 
-(IBAction)btn_Action:(id)sender; 

@end 

ViewController.m

#import "ViewController.h" 

@interface ViewController() 

@end 

@implementation ViewController 

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    // Do any additional setup after loading the view, typically from a nib. 
} 

-(IBAction)btnDownload:(id)sender 
{ 
    NSString *urlToDownload = @"http://leocan.co/Salon/images/album/videos/b.mp3"; 

    filePath= [appObj downloadFile:urlToDownload filename:@"myAudio.mp3"]; 
} 

-(IBAction)btn1_DownAction:(id)sender 
{ 
    NSString *soundFile; 
    soundFile = [[NSBundle mainBundle] pathForResource:@"demo1" ofType:@"mp3"]; 
    NSURL *fileURL = [NSURL fileURLWithPath:soundFile]; 
    self.playerAudio1 = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil]; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
    [[AVAudioSession sharedInstance] setActive: YES error: nil]; 
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
    self.playerAudio1.numberOfLoops = -1; 
    self.playerAudio1.volume=1; 
    [self.playerAudio1 play]; 
    NSLog(@"hold Down"); 

} 

-(IBAction)btn2_DownAction:(id)sender 
{ 
    NSString *soundFile; 
    soundFile = [[NSBundle mainBundle] pathForResource:@"demo2" ofType:@"mp3"]; 
    NSURL *fileURL = [NSURL fileURLWithPath:soundFile]; 
    self.playerAudio2 = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil]; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
    [[AVAudioSession sharedInstance] setActive: YES error: nil]; 
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
    self.playerAudio2.numberOfLoops = -1; 
    self.playerAudio2.volume=1; 
    [self.playerAudio2 play]; 
    NSLog(@"hold Down"); 
    } 

-(IBAction)btn3_DownAction:(id)sender 
{ 
    NSString *soundFile; 
    soundFile = [[NSBundle mainBundle] pathForResource:@"demo3" ofType:@"mp3"]; 
    NSURL *fileURL = [NSURL fileURLWithPath:soundFile]; 
    self.playerAudio3 = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil]; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
    [[AVAudioSession sharedInstance] setActive: YES error: nil]; 
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
    self.playerAudio3.numberOfLoops = -1; 
    self.playerAudio3.volume=1; 
    [self.playerAudio3 play]; 
    NSLog(@"hold Down"); 

} 

-(IBAction)btn4_DownAction:(id)sender 
{ 
    NSString *soundFile; 
    soundFile = [[NSBundle mainBundle] pathForResource:@"demo6" ofType:@"mp3"]; 
    NSURL *fileURL = [NSURL fileURLWithPath:soundFile]; 
    self.playerAudio4 = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:nil]; 
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:nil]; 
    [[AVAudioSession sharedInstance] setActive: YES error: nil]; 
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents]; 
    self.playerAudio4.numberOfLoops = -1; 
    self.playerAudio4.volume=1; 
    [self.playerAudio4 play]; 
    NSLog(@"hold Down"); 
    } 

-(IBAction)btn_Action:(id)sender 
{ 
    NSLog(@"hold release"); 
    if([sender tag]==1) 
    { 
     [self.playerAudio1 stop]; 
    } 
    else if([sender tag]==2) 
    { 
     [self.playerAudio2 stop]; 
    } 
    else if([sender tag]==3) 
    { 
     [self.playerAudio3 stop]; 
    } 
    else 
    { 
     [self.playerAudio4 stop]; 
    } 
} 

- (void)didReceiveMemoryWarning { 
    [super didReceiveMemoryWarning]; 
    // Dispose of any resources that can be recreated. 
}