private var gradientView = ColorGradientView()
voiceAdjustView.insertSubview(gradientView, belowSubview: voiceLevelSlider)
gradientView.snp.makeConstraints { (make) in
make.width.equalTo(voiceLevelSlider)
make.height.equalTo(4)
make.centerX.equalTo(voiceLevelSlider)
make.centerY.equalTo(voiceLevelSlider)
}
gradientView.gradientColors = [UIColor(hexString: "83B5FF"),.COLOR_4C7EFF]
gradientView.direction = .LeftToRight
gradientView.layer.cornerRadius = 4 / 2
gradientView.layer.masksToBounds = true
voiceLevelSlider.addTarget(self, action: #selector(sliderChangeGradientColor), for: .valueChanged)
@objc private func sliderChangeGradientColor() {
let targetWidth = (voiceLevelSlider.width - 9) / 15 * CGFloat(Int(ceilf(voiceLevelSlider.value)))
gradientView.snp.remakeConstraints { (make) in
make.width.equalTo(targetWidth)
make.height.equalTo(3)
make.left.equalTo(voiceLevelSlider)
make.centerY.equalTo(voiceLevelSlider).offset(0.5)
}
gradientView.gradientColors = [UIColor(hexString: "83B5FF"),.COLOR_4C7EFF]
gradientView.direction = .LeftToRight
gradientView.layer.cornerRadius = 4 / 2
gradientView.layer.masksToBounds = true
gradientView.layoutIfNeeded()
gradientView.setNeedsLayout()
}
网友评论