Ich versuche gerade einen Uistepper zu inkrementieren und seinen Wert basierend auf seinem aktuellen Wert zu ändern. Der Uistepper soll als Zeitnehmer fungieren. Es wird um 5 Minuten erhöht, bis es 60 Minuten erreicht, wo es dann um 60 Minuten erhöht wird. Sobald es 120 Minuten erreicht, möchte ich den Stepper um 1440 Minuten erhöhen, was 1 Tag ist. Mein Code hat jedoch Probleme, und ein anderes Problem, auf das ich stoße, ist das Verringern des Steppers, so dass Sie von einem Tag zurück zu einer Stunde und dann zurück zu Minuten gehen können.Inkrement UIStepper Wert basierend auf Minute, Stunde, Tag usw. SWIFT
Dies ist mein Code jetzt:
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)")
}
Sie haben ein ernstes Design-Problem. –
Sie haben "stepper.value = 5" und in der nächsten Zeile "stepper.value = 0". Das machst du auch an anderen Orten. Was ist der Zweck davon? Warum sollte der Stepper-Wert 5 und dann 0 zugewiesen werden? –
@ElTomato was wäre Ihr Ansatz? Ich verstehe den Code ist chaotisch und wiederholend und ich bin nur auf der Suche nach Hilfe – ayjoy