我有一個UIPickerView
與多個組件。有些值是灰色的,我的pickerView:didSelectRow:inComponent
通過將有問題的選取器組件轉移到最接近的有效值來承認這一點,就像UIDatePicker
當您選擇「February」時從「30」移動到「28」一樣。然後它調用一個委託方法來公佈調整後的值。UIPickerView selectedRowInComponent:代碼調整後返回陳舊的數據
當我的調整器方法調用我的UIPickerView
的selectRow:inComponent:animated:YES
時,屏幕上的值是正確的,但selectedRowInComponent:
的值是陳舊的(從調整灰度值之前)。但是,如果我撥打selectRow:inComponent:animated:NO
,返回的值是正確的,但缺少動畫是令人不安的。
我已經試過包裝在一個beginAnimations:
/commitAnimations
塊的調整和追趕在UIView
的+animationDidStopSelector
的值,但是我還是過時的值。有沒有人遇到過這個?
該問題很容易重複。
[picker selectRow:newValue inComponent:i+offset animated:YES];
retValue = [picker selectedRowInComponent:i+offset];
如果你有YES來動畫它,那麼retValue就是0(你稱之爲陳舊)。更改爲NO,retValue將與newValue相同。