我无法在函数外部访问 playerAv() 函数的元素。我怎样才能访问它?
我还尝试删除函数并在任何函数之外使用这些行,但在第二行出现错误。为什么我不能在函数外分配 audioLink 值?
var audioLink = "somewebpage.com/abc.pls"
var player:AVPlayer = AVPlayer(URL: NSURL(string: audioLink))
我试过了
let pa = playerAv()
pa.player.volume = currentValue //I got an error here:(
println(currentValue)
部分代码:
func playerAv(){
var audioLink = "somewebpage.com/abc.pls"
var player:AVPlayer = AVPlayer(URL: NSURL(string: audioLink))
}
@IBAction func sliderValueChanged(sender: UISlider) {
var currentValue = Float(sender.value)
println(currentValue)
player.volume = currentValue
}
谢谢
最佳答案
你很困惑。
您正在混淆类和函数。
根据设计,函数的局部变量在函数外部不可访问。它们只存在于函数的范围内,一旦函数返回就不存在了。因此,您的 playerAv() 函数不会做任何有用的事情。
在我看来,您希望 playerAv 成为一个具有实例变量的类:
class PlayerAv
{
let audioLink: String = "http://somewebpage.com/abc.pls"
var player: AVPlayer
init()
{
player = AVPlayer(URL: NSURL(string: self.audioLink))
}
}
现在您可以创建一个 PlayerAv 对象并使用它:
let pa = playerAv()
pa.player.volume = currentValue
关于ios - 无法使用点符号快速访问函数成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30055974/