私はここでかなり新しいです。私は迅速にプロパティオブザーバーに質問があります。以下にいくつかのサンプルコードがあります。私が欲しいのは、a.valueが変更された場合、Analysis.hasChangedプロパティをtrueに更新するプロパティです。私はこれを行う方法がありますか?最後にSwift:クラスのプロパティの変更を他のクラスから観察する方法
class Number {
var value: Double
init(numberValue: Double) {
self.value = NumberValue
}
}
class Analysis {
var a: Number
var hasChanged = false
init(inputNumber: Number) {
self.a = inputNumber
}
}
testNumber = Number(numberValue: 4)
testAnalysis = Analysis(inputNumber: testNumber)
print(testAnalysis.hasChanged) // will print "false"
testNumber.value = 10
print(testAnalysis.hasChanged) // will still print "false", but I want it to print "true"
、私は、ユーザーが自分の分析のいずれかが、彼らが選択した場合、彼らは分析の結果を更新することができるように変更された番号を使用している場合に通知することができるようにしたいです。
おかげで私を提供することができます任意のヘルプ誰のための束。
-Logan
KVOはクラスがNSObjectから継承されている場合にのみ機能します。 –
"a.valueが変更された場合、SumTwo.hasChangedプロパティをtrueに更新するプロパティが必要です。"しかし、SumTwoはコードのどこにもありません。 – matt
おっと。申し訳ありません。私はこの例を単純化し、最初の段落でクラス名を編集するのを忘れていました。私はそれを修正しました。 – Logan