0

こんにちは、私は ios の初心者で、ラジオを再生するアプリを作成したいので、アプリは正常に動作しますが、アプリにボリュームを含めようとすると、問題が発生し、次のエラーが表示されます:

[AVPlayer setVolume:]: unrecognized selector sent to instance 0x9d4f500
2013-05-16 09:34:47.785 RadioFM[22061:12503] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[AVPlayer setVolume:]: unrecognized selector sent to instance 0x9d4f500'

ここに私が使用している私のソースコードがあります:

PlayerViewController.h で:

@interface PlayerViewController : UIViewController
{ AVAudioPlayer *radioPlayer; IBOutlet UISlider *Volume; }
- (IBAction)Volume:(id)sender;

@property (nonatomic,retain) AVAudioPlayer *radioPlayer;

そして PlayerViewController.m で:

@synthesize radioPlayer;

- (void)viewDidLoad
{
    NSString *RadStream=<@Radio stream>;
    NSURL *url=[NSURL URLWithString:RadStream];
    NSError *error;
    AVPlayerItem *playerItem = [AVPlayerItem playerItemWithURL:url];
    self.radioPlayer = [AVPlayer playerWithPlayerItem:playerItem];
    [[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error];
    [[AVAudioSession sharedInstance] setActive: YES error: nil];
    [[UIApplication sharedApplication] beginReceivingRemoteControlEvents];
    [self.radioPlayer play];
    [super viewDidLoad];

}

そして、私はスライダービューを持っており、このスライダーのアクションで私は持っています:

- (IBAction)Volume:(id)sender {
if (self.radioPlayer != nil)
{
    self.radioPlayer.volume = Volume.value;
}

}

誰でもこれについて私を助けることができますか?よろしくお願いします。

4

4 に答える 4

1

最初に関数の名前を確認してください。最初はsetVolumeだったと思います。そのため、バインディングを切断し、ボリュームでバインドします。そして、これを試して音量を変更してください

- (void)sliderValueChanged:(UISlider *)slider 
{ 
myPlayer.volume = slider.value / 100.0; 
}

でバインドSilderしますUIControlEventValueChanged。アクション

于 2013-05-16T08:58:05.977 に答える
0

IBAction イベントを確認してくださいUIControlEventValueChanged

于 2013-05-16T08:56:34.553 に答える