Ios4 iOS:如何只用一个按钮停止背景音乐?

Ios4 iOS:如何只用一个按钮停止背景音乐?,ios4,ios5,xcode4.2,Ios4,Ios5,Xcode4.2,我在iOS的主界面中有一个音乐按钮,我希望该按钮可以作为停止音乐按钮,同时可以再次播放音乐。我的问题是我只能停止播放音乐,但不能再播放。这是我在xcode4中的iOS代码。如何为播放和停止音乐按钮定义一个按钮?我为stopMusic和playMusic都指定了一个按钮,但它不起作用 - (IBAction)stopMusic{ self.playBgMusic.enabled = YES; [self.player stop]; } - (IBAction)playMus

我在iOS的主界面中有一个音乐按钮,我希望该按钮可以作为停止音乐按钮,同时可以再次播放音乐。我的问题是我只能停止播放音乐,但不能再播放。这是我在xcode4中的iOS代码。如何为播放和停止音乐按钮定义一个按钮?我为stopMusic和playMusic都指定了一个按钮,但它不起作用

- (IBAction)stopMusic{  
    self.playBgMusic.enabled = YES;
    [self.player stop];

}

- (IBAction)playMusic{

    self.playBgMusic.enabled = YES;
    [self.player play];

}


// Implement viewDidLoad to do additional setup after loading the view, typically from a nib.
- (void)viewDidLoad
{

    NSString *path = [[NSBundle mainBundle] pathForResource:@"music" ofType:@"mp3"];
    self.player=[[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL]; 
    player.delegate = self;
    [player play];
    player.numberOfLoops = -1;
    [super viewDidLoad];
}

与其让一个按钮尝试发送两条不同的消息(
stopMusic,playMusic
),不如让它每次都发送
toggleMusic
。然后,
toggleMusic
方法可以根据播放器的当前状态停止或播放音乐

   - (IBAction)toggleMusic{  
        if ([self.player isPlaying] == YES) {
         [self.player stop];
        } else {
         [self.player play];
        }
        self.playBgMusic.enabled = YES;

    }

您的代码正在工作,但当我切换它时,程序将退出并发出程序接收信号。这是行代码错误int retVal=UIApplicationMain(argc,argv,nil,nil);如何从记忆中释放?几乎成功。你应该非常感谢。-(void)dealoc{[player release];[super dealoc];}我刚刚添加了这个版本,但不起作用。程序意外退出。