我有一个项目,我需要在应用程序启动设置中切换语言环境,但是经过几次测试,我意识到当我更改为英语以外的其他语言时,日期picker.maximum / minimum无法正常工作。我正在使用radianttap的语言切换器框架在设置/登录屏幕上切换语言环境。
切换语言的代码:
func checkLanguageSelected(langSelected: String){
switch langSelected {
case "English":
Locale.updateLanguage(code: "en")
case "မြန်မာ":
Locale.updateLanguage(code: "my")
default:
break
}
}
这是我设置日期选择器的代码:
let datePickerView:UIDatePicker = UIDatePicker()
datePickerView.datePickerMode = UIDatePickerMode.date
//datePickerView.locale = NSLocale.init(localeIdentifier: "en") as Locale
let maxDateString = "01-Jan-2006"
let minDateString = "01-Jan-1916"
let dateFormatter:DateFormatter = DateFormatter()
//dateFormatter.locale = NSLocale.init(localeIdentifier: "en") as Locale
dateFormatter.dateFormat = "dd-MM-yyyy"
let maxDate:Date? = dateFormatter.date(from: maxDateString)
let minDate:Date? = dateFormatter.date(from: minDateString)
datePickerView.maximumDate = maxDate
datePickerView.minimumDate = minDate
dateOfBirth.inputView = datePickerView
datePickerView.addTarget(self, action: #selector(datePickerFromValueChanged(sender:)), for: UIControlEvents.valueChanged)
我正在使用链接到IBAction的UITextfield进行编辑,确实开始在文本字段“ dateOfBirth”上显示日期选择器。有人知道吗只要该应用以英语启动,那么最大/最小日期就可以使用,但不能在其他语言上使用。我尝试将datepicker和dateformatter的语言环境都设置为“ en”,但是在英语设置上它也破坏了datepicker的最大/最小日期。 有人以前遇到过此类问题吗?
答案 0 :(得分:1)
显然是xcode错误?不确定,我重新启动了xcode,更改语言环境不会再与datepicker的最大/最小设置发生冲突。