好以及现在即时通讯试图让体积改变对滑块错误:'fxVolumeSlider'未声明(首次在此函数中使用) - 需要声明IBOUTLET?
这里是代码
@implementation MainerViewController
@synthesize fxVolumeSlider;
- (IBAction)pushPlay:(id)sender; {
NSString *path = [[NSBundle mainBundle] pathForResource:@"test" ofType:@"wav"];
if (theAudio) [theAudio release];
theAudio = [[AVAudioPlayer alloc] initWithContentsOfURL:[NSURL fileURLWithPath:path] error:NULL];
theAudio.delegate = self;
[theAudio play];
volumeTimer = [NSTimer scheduledTimerWithTimeInterval:0.05 target:self selector:@selector(updateVolume) userInfo:nil repeats:YES];
}
-(void)updateVolume {
[theAudio setVolume:fxVolumeSlider.value];
}
- (void)viewDidLoad {
[super viewDidLoad];
// Setup custom slider images
UIImage *minImage = [UIImage imageNamed:@"grey_track.png"];
UIImage *maxImage = [UIImage imageNamed:@"white_track.png"];
UIImage *tumbImage= [UIImage imageNamed:@"metal_screw.png"];
minImage=[minImage stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0];
maxImage=[maxImage stretchableImageWithLeftCapWidth:10.0 topCapHeight:0.0];
// Setup the FX slider
[fxVolumeSlider setMinimumTrackImage:minImage forState:UIControlStateNormal];
[fxVolumeSlider setMaximumTrackImage:maxImage forState:UIControlStateNormal];
[fxVolumeSlider setThumbImage:tumbImage forState:UIControlStateNormal];
fxVolumeSlider.minimumValue = 0.0;
fxVolumeSlider.maximumValue = 1.0;
fxVolumeSlider.continuous = YES;
//fxVolumeSlider.value = [sharedSoundManager fxVolume];
// Attach an action to sliding
[fxVolumeSlider addTarget:self action:@selector(fxSliderAction:) forControlEvents:UIControlEventValueChanged];
// Cleanup
minImage = nil;
maxImage = nil;
tumbImage = nil;
}
- (void) fxSliderAction:(id)sender {
[theAudio setFxVolume:fxVolumeSlider.value];
}
但是现在我得到这个错误
警告:“AVAudioPlayer”可能不响应“-setFxVolume:”
所以每次我打的播放按钮,我试着调整音量,但我得到踢出应用
嗨,你可以请看看新错误 – LAA 2011-06-10 22:08:46
我认为你正在寻找的方法是'setVolume:'而不是'setFxVolume:'。 – 2011-06-10 22:19:49
谢谢你现在的作品! :) – LAA 2011-06-10 22:27:52