UIDatePicker 在 iOS14 上的顯示異常

如果你的 UI 在 iOS14 上出現了問題,想修改回以前,可設置UIDatePickerpreferredDatePickerStyle 屬性‼️‼️


 _datePicker = [[UIDatePicker alloc]init];
        _datePicker.backgroundColor = [UIColor whiteColor];
        if (@available(iOS 13.4, *)) {
            _datePicker.preferredDatePickerStyle=UIDatePickerStyleWheels;
        } else {
            // Fallback on earlier versions
        }
        _datePicker.datePickerMode = _datePickerMode;
        _datePicker.frame=CGRectMake(0, kTopViewHeight + 0.5, SCREEN_WIDTH, kDatePicHeight);
        // 設置該UIDatePicker的國際化Locale,以簡體中文習慣顯示日期,UIDatePicker控件默認使用iOS系統的國際化Locale
        _datePicker.locale = [[NSLocale alloc]initWithLocaleIdentifier:@"zh_CHS_CN"];
        NSDateFormatter *formatter = [[NSDateFormatter alloc]init];
        [formatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

‼️‼️‼️‼️注意‼️‼️‼️‼️:

  • datePickerMode的設置放在preferredDatePickerStyle設置之後;
  • frame的設置放在datePickerMode之後;

以上兩點要切記‼️‼️,要不然還是會顯示錯位,不在正中間,還是系統的大小

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章