我想给NSProgress添加观察者属性。我有这个代码,但是它只调用一次。
var progress: NSProgress?
{
didSet
{
println(progress!.fractionCompleted)
}
}
您的观察者只触发一次的原因是它正在观察progress
变量本身的变化,而不是progress
变量内的属性(在本例中,可能是fractionCompleted
)。因为更新到你的NSProgress的实际进度不涉及你设置progress
到一个新的NSProgress
,你只击中didSet
一次(大概当你第一次实例化它。)
观察NSProgress
变化的首选模式是使用键值观察,这将更适合您的用例。