ユーザーがUITabBarControllerタブをタップしたときにサウンドを再生する方法

cocoa-touch iphone objective-c xcode
ユーザーがUITabBarControllerタブをタップしたときにサウンドを再生する方法

私のアプリケーションでは、3つのView Controllerを管理するためのuitabbarコントローラーがあります。 次に、ユーザーがタブのいずれかをクリックした場合にサウンドを追加します。 ソースコード:

// Declare all three view controllers
nextview *con = [[nextview alloc]init];
nextview1 *con1= [[nextview1 alloc] init];
nextview2 *con2 = [[nextview2 alloc] init];
//declare tab barcontroller
UITabBarController *tabBarController = [[UITabBarController alloc] init];
tabBarController.view.frame = CGRectMake(0, 0, 320, 480);

// Set each tab to show an appropriate view controller
[tabBarController setViewControllers:[NSArray arrayWithObjects:con,con1,con2, nil]];

  0  1


ベストアンサー

UITabBarController`のデリゲートを設定し、 tabBarController:didSelectViewController: `を使用します(info http://developer.apple.com/library/ios/documentation/uikit/reference/UITabBarControllerDelegate_Protocol/Reference/Reference.html//apple_ref / occ / intf / UITabBarControllerDelegate [here])でサウンドを再生します。 iOSでサウンドを再生するのは多少難しいですが、Googleはあなたの友達です。

1


デリゲートのtabbarボタンを追跡する-tabBarController:didSelectViewController:

AVAudioPlayerでサウンドを再生します.. ここにコード-

NSURL *url = [NSURL fileURLWithPath:[NSString stringWithFormat:@"%@/audiofile.mp3", [[NSBundle mainBundle] resourcePath]]];

    NSError *error;
    audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
    audioPlayer.numberOfLoops = -1;

    if (audioPlayer == nil)
        NSLog([error description]);
    else
        [audioPlayer play];

0


タイトルとURLをコピーしました