【发布时间】:2016-04-24 18:09:04
【问题描述】:
我有这个 UISlider 来控制音乐播放的音量。当拇指在中间时,音乐的音量设置为 1 并且应该播放。我遇到的问题是它正在播放,但是一旦我将拇指向右或向左移动并尝试将拇指移回中间,我就听不到任何音乐了。当我向左或向右并为任一 AVPlayer 播放音乐时,它可以工作,除非滑块位于中间。提前谢谢!
middleSlider = UISlider(frame: CGRectMake(110 * scaleFactor, 50, 300, 150))
middleSlider.tintColor = UIColor.whiteColor()
middleSlider.setThumbImage(UIImage(named: "thumb3"), forState: UIControlState.Normal)
middleSlider.minimumTrackTintColor = UIColor.whiteColor()
middleSlider.maximumTrackTintColor = UIColor.whiteColor()
middleSlider.maximumValue = 2.0
middleSlider.minimumValue = 0.0
middleSlider.value = 1.0
middleSlider.continuous = true
middleSlider.userInteractionEnabled = false
middleSlider.addTarget(self, action: #selector(middleSliderChangeAudio), forControlEvents: UIControlEvents.AllEvents)
self.view?.addSubview(middleSlider)
func middleSliderChangeAudio() {
if middleSlider.value < 1.0 {
player.volume = 1
player2.volume = 0
}
if middleSlider.value > 1.0 {
player.volume = 0
player2.volume = 1
}
if middleSlider.value == 1.0 {
player.volume = 1
player2.volume = 1
}
}
【问题讨论】:
-
您确定将滑块正好设置在中间吗?使用断点或日志消息检查
middleSlider.value的值。正好是 1.0 吗? -
它在设置为 1 时开始工作。但是当我将滑块向右或向左移动并返回到中间时它不起作用。我尝试记录消息,但控制台中没有打印任何内容。
-
即使您没有看到日志消息,您也可以随时设置断点并查看
middleSlider.value。如果你能看到这些值,我认为这将是很明显的事情。调试器是你的朋友,学习如何使用它!
标签: ios swift avplayer uislider