これまでのところ、ユーザーがサブジェクトを入力し、各サブジェクトの名前とスライダーとスライダーの値ラベルと共にテーブルビューが表示されます。以下を参照してください:テーブルビューからデータを収集するswift
Click Here for Image (I don't have enough reputation yet to embed an image.)
私は各被験者のデータとスライダーの値だけでなく、結合されたすべてのスライダーの合計値を収集し、処理することができるようにしたいです。
私はこれについてどうなるかわかりません。私はすべてのスライダーの合計を取得するために以下のコードを試してみましたが、それは動作しません、と私はここからそれをしようとする方法がわからないです。:
class SubjectsViewControllerTableViewCell: UITableViewCell {
var isSliderTotal: Float = Float(GlobalSubjects.subjects.count) * 50
var lastUp: Float = 50
var lastDown: Float = 50
@IBOutlet var subjectLabel: UILabel!
@IBOutlet var percentLabel: UILabel!
@IBOutlet var slider: UISlider!
@IBAction func slider(_ sender: Any) {
(sender as AnyObject).setValue(Float(roundf(slider.value * 1)/1), animated: true)
print("test")
let sliderValueAsVar = String(slider.value)
percentLabel.text = String(sliderValueAsVar.components(separatedBy: ".")[0])
if slider.value > 50 {
let currentSlider = slider.value - lastDown
lastDown = slider.value
isSliderTotal += currentSlider
print (isSliderTotal)
}
else if slider.value < 50 {
let currentSlider = slider.value + lastUp
lastUp = slider.value
isSliderTotal -= currentSlider
print (isSliderTotal)
}
}
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
override func setSelected(_ selected: Bool, animated: Bool) {
super.setSelected(selected, animated: animated)
// Configure the view for the selected state
}
}
私も手掛かりを持って知っていませんあなたが辞書を使うかもしれないという事実を除いて、どのように私が各スライダーとサブジェクトの価値を得るかについて?
ご協力いただければ幸いです。
ありがとうございます。
あなたは**モデル**が必要ですwコントローラで、スライダの値が変更されてモデルを更新し、必要な数学を行うときに呼び出される 'cellForRow ...'のコールバッククロージャとスライダの値を保持します。 – vadian