Ich habe eine UIPickerView
mit mehreren Komponenten. Einige Werte sind ausgegraut und mein pickerView:didSelectRow:inComponent
berücksichtigt dies, indem die fragliche Auswahlkomponente auf den nächsten gültigen Wert verschoben wird, ähnlich wie UIDatePicker
von "30" zu "28" wechselt, wenn Sie "Februar" auswählen. Dann ruft es eine Delegate-Methode auf, um den angepassten Wert anzukündigen.UIPickerView selectedRowInComponent: gibt veraltete Daten zurück, nachdem der Code angepasst wurde
Wenn meine Einstellvorrichtung Methode ruft meine UIPickerView
‚s selectRow:inComponent:animated:YES
, wird der Wert auf dem Bildschirm korrekt ist, aber die Werte von selectedRowInComponent:
abgestanden sind (von vor der Einstellung für die Grauwerte). Wenn ich jedoch selectRow:inComponent:animated:NO
aufrufen, sind die zurückgegebenen Werte korrekt, aber der Mangel an Animation ist störend.
Ich habe versucht, die Einstellung in einem beginAnimations:
/commitAnimations
Block Einwickeln und die Werte in UIView
‚s +animationDidStopSelector
fangen, aber ich habe noch abgestanden Werte erhalten. Ist schon mal jemand darauf gestoßen?
Das Problem ist einfach zu duplizieren.
Wenn Sie JA haben, um es zu animieren, dann ist retValue 0 im Kopf (Sie nennen es abgestanden). Der Wechsel zu NO, retValue ist identisch mit newValue.