我正在尝试实施允许用户选择出生日期的UIDatePicker
。这将是相对简单的,但是还要求用户超过18岁。这不是问题(UIDatePicker
具有允许我指定的minimumDate
属性),但它确实存在可用性问题。
如果您选择日期,请举例说,5月4日。将语言环境设置为en_GB,这将显示为2014年5月4日。让我们假设此日期在今天之后。在你有机会改变年份之前,比方说,1977年,日期选择器将迫使日期回到今天。
我想通过将显示格式更改为YYYY-MM-DD来解决此问题,而无需实现UIPickerView
(可能需要大量工作才能正确实施的解决方案)。有没有办法用UIDatePicker
执行此操作,允许相同的日期执行,同时具有更好的可用性?我最好不要在没有自定义类的情况下这样做(显然私有API是 - 不能冒着从App Store拒绝的风险)。或者,是否有更好的方法来实施出生日期选择器?
答案 0 :(得分:0)
您想要切换选择器的列顺序:
不,这是不可能的。
也许您可以找到一些具有Y / M / D格式的区域设置
答案 1 :(得分:0)
我在没有创建自定义选择器的情况下看到的唯一方法是使用
-(void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSInteger)component
您可以检查用户是否在有效选择上,否则您可以强制选择器保持在有效位置。假设用户每次滚动其中一行时都应执行验证检查,而不是为datePicker
设置最小和最大日期