-2
現在、uistepperをインクリメントして現在の値に基づいてその値を変更しようとしています。 uistepperはタイムキーパーとして行動するはずです。それは60分に達するまで5分ずつ増分し、60分増分します。 120分に達すると、私はステッパーを1440分増やして1日にします。しかし、私のコードには問題があります。もう1つの問題は、ステッパーを減らして1日から1時間に戻ってから数分に戻すことです。分、時間、日などに基づいてUIStepperの値を増やします。SWIFT
これが今の私のコードです:
func stepperValueChanged(stepper: UIStepper) {
var value = Int(stepper.value)
stepper.minimumValue = 0
if (stepper.value != 0 && stepper.value <= 60) {
stepper.stepValue = 5
stepper.value -= 5
stepper.value += 5
value = Int(stepper.value)
reminderSubLabel.text = "\(value) minutes before"
if stepper.value == 60 {
reminderSubLabel.text = "\(value/60) hour before"
}
} else if stepper.value >= 60 && stepper.value <= 180 {
if stepper.value == 60 {
reminderSubLabel.text = "\(value/60) hour before"
stepper.value -= 5
stepper.value += 60
} else {
//stepper.value = 120
value = Int(stepper.value/60)
stepper.stepValue = 60
stepper.value -= 60
stepper.value += 60
reminderSubLabel.text = "\(value) hours before"
}
if stepper.value == 120 {
stepper.value = 1440
stepper.value -= 1320
stepper.value += 1440
//stepper.stepValue = 1320
}
}
if stepper.value == 0 {
stepper.stepValue = 5
stepper.value = 0
reminderSubLabel.text = "At the time of the event"
}
stepper.minimumValue = 0
stepper.maximumValue = 20160
print("\(stepper.value)")
}
あなたは深刻な設計上の問題があります。 –
"stepper.value = 5"で、次の行 "stepper.value = 0"にあります。これは他の場所でも行います。それの目的は何ですか?ステッパーの値を5に代入してから0にするのはなぜですか? –
@ElTomatoあなたのアプローチは何ですか?私はコードが乱雑で反復的であると理解しています。私はちょうど助けを求めています。 – ayjoy