2016-06-14 40 views
0

我在ViewController使用UIDatePicker。 它的工作罰款iOS 8.x, 但是當我在iOS 9.x設備上運行它,它墜毀。的UIDatePicker崩潰在iOS9

我試圖創建一個新的項目以同樣的方式使用UIDatePicker,它在所有iOS設備工作正常。

所以,我的問題是我的項目設置是不是錯了還是我uesd UIDatePicker的方式是錯誤的。

崩潰的信息是:

click to see the crash log

我HAVA設置斷點,它只是崩潰在_datePicker.datePickerMode = UIDatePickerModeDate;在iOS 9.3上的,並在iOS 8.1上正常工作。

- (UIDatePicker *)datePicker { 
    if (!_datePicker) { 
     NSDate *nowDate = [NSDate date]; 
     _datePicker = [[UIDatePicker alloc] init]; 
     _datePicker.datePickerMode = UIDatePickerModeDate; 
     _datePicker.hidden = YES; 
     _datePicker.backgroundColor = [UIColor whiteColor]; 
     [_datePicker addTarget:self action:@selector(datePickerChanged) forControlEvents:UIControlEventValueChanged]; 
    } 
    return _datePicker; 
} 
+1

設置一個例外brakepoint趕崩潰 – Injectios

+0

能否請你把你的代碼? –

+0

我認爲視圖和選取器視圖的層次結構中存在錯誤。 –

回答

0

它是因爲iOS 9更新引用此question已被回答。 更新您的代碼,如下所示。

_datePicker = [[UIDatePicker alloc] init]; 
    _datePicker.datePickerMode = UIDatePickerModeDateAndTime; 
    _datePicker.datePickerMode = UIDatePickerModeDate; 

UIPickerView和的UIDatePicker是現在可以調整大小和 自適應以前,這些意見將執行即使 你試圖調整它們的大小默認大小。這些視圖現在默認在所有設備上默認爲320點的寬度 ,而不是iPhone的 設備寬度。編譯爲iOS 9.任何問題,當遇到 可以解決由完全限制或大小選擇器 欣賞到所需的大小,而不是依賴隱式的行爲依賴於舊的執法默認 大小的接口可能會看錯。

+0

我試過了,但它又崩潰了。 – suool