尝试将 observationTime 设置为时间间隔时出现此错误。不知道为什么我可以设置一个属性,我在其他地方都是这样设置的
weatherReading?.observationTime = NSTimeIntervalSince1970
@objcMembers class WeatherThirdPartyReadings: NSObject {
private var _temperature: Double
private var _speed: Double
private var _direction: Double
private var _observationTime: Double
private var _isSummaryLoaded: Bool
var temperature: Double {
return _temperature
}
var speed: Double {
return _speed
}
var direction: Double {
return _direction
}
var observationTime: Double {
return _observationTime
}
var isSummaryLoaded: Bool {
return _isSummaryLoaded
}
init(temperature: Double, speed: Double, direction: Double, observationTime: Double, isSummaryLoaded: Bool) {
self._temperature = temperature
self._speed = speed
self._direction = direction
self._observationTime = observationTime
self._isSummaryLoaded = isSummaryLoaded
}
}
最佳答案
你需要
var observationTime: Double {
set {
_observationTime = newValue
}
get{
return _observationTime
}
}
像这样
var observationTime: Double {
return _observationTime
}
使它成为只读属性,get
@objcMembers class WeatherThirdPartyReadings: NSObject {
var temperature: Double
var speed: Double
var direction: Double
var observationTime: Double
var isSummaryLoaded: Bool
init(temperature: Double, speed: Double, direction: Double, observationTime: Double, isSummaryLoaded: Bool) {
self.temperature = temperature
self.speed = speed
self.direction = direction
self.observationTime = observationTime
self.isSummaryLoaded = isSummaryLoaded
}
}
关于ios - 无法分配给属性 'observationTime' 是一个只读属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56362199/