-2
我想在sliderView中顯示文本字段更改。即,當用戶改變文本字段中的值時,滑塊值應該被更新。我正在使用帶有兩個拇指的RangeSlider。滑塊值基於web服務調用進行設置。我將響應存儲在一個appDelegate類中,並提取它。但問題出在UIControl類中,我在beginTracking和EndTracking中獲取appdelgate值。只有當我對幻燈片進行了一些更改(拖動)時,纔會調用這些函數。但是在更新文本字段時只調用初始化部分。如何在init函數中從appdelegate獲取值?如何訪問uiControl類中的appdelegate值
class RangeSlider: UIControl {
var minimumValue = 0.0
var maximumValue = 100.0
var lowerValue = 0.0
var upperValue = 100.0
let trackLayer = CALayer()
let lowerThumbLayer = RangeSliderThumbLayer()
let upperThumbLayer = RangeSliderThumbLayer()
var previousLocation = CGPoint()
var thumbWidth: CGFloat {
return CGFloat(bounds.height)
}
override init(frame: CGRect) {
super.init(frame: frame)
trackLayer.backgroundColor = UIColor.yellow.cgColor
layer.addSublayer(trackLayer)
lowerThumbLayer.backgroundColor = UIColor.black.cgColor
layer.addSublayer(lowerThumbLayer)
upperThumbLayer.backgroundColor = UIColor.black.cgColor
layer.addSublayer(upperThumbLayer)
lowerThumbLayer.rangeSlider = self
upperThumbLayer.rangeSlider = self
updateLayerFrames()
}
}
林能夠訪問內部開始跟蹤和結束跟蹤....但是當我把它在init方法NAN錯誤會來..爲什麼是這樣? – Shpuj
需要確保這些值在您嘗試訪問它們時可用。可能是第一次這些值不可用。嘗試將值初始化爲0.0。 –
有初始化中的appDelegate和UIControl值class..var minimumValue = 0.0 變種maximumValue = 0.0 變種lowerValue = 0.0 變種upperValue = 0.0 ........同樣的錯誤快到 – Shpuj