日期时间选择器 在IOS中是以组件的形式 DatePickerIOS支持View组件的所有属性,可以设置他的宽度、高度、位置等
这是一个受约束的(Controlled)组件,所以你必须监听onDateChange回调函数并且及时更新date属性来使得组件更新,否则用户的修改会立刻被撤销来确保当前显示值和props.date一致。
除了View组件的属性,DatePickerIOS组件还支持如下属性:
date 当前被选中的日期和时间 Date类型
maximumDate minimumDate
minuteInterval (1, 2, 3, 4, 5, 6, 10, 12, 15, 20, 30)
用来设置可选的最小分钟单位
mode (‘date’, ‘time’, ‘datetime’) 选择器模式
onDateChange 当用户修改日期或时间时调用此回调函数。
唯一的参数是一个Date对象,表示新的日期和时间(也就是用户选择的)
timeZoneOffsetInMinutes 以分钟为单位的时区时间差 默认情况下,选择器会选择设备的默认时区。通过此参数,可以指定一个时区。举个例子,要使用北京时间(东八区),可以传递8 * 60。
注意:必须要把一个日期类型的状态机变量赋值给DatePickerIOS组件的date属性,并且在用户操作DatePickerIOS组件修改后,用onDateChange回调的新的date去更新对应的状态机变量,否则会出现用户使用DatePickerIOS组件修改改了时间,几秒钟后,DatePickerIOS组件又回到了原来的时间的情况。
warning:Invalid prop ‘date’ of type ‘Number’
warning:Required prop ‘onDateChange’ was not specified
这是一个bug,升级到0.28即可,如果不想升级,可以照这个修改:
node_modules/react-native/Libraries/Components/DatePicker
https://github.com/facebook/reac … d46e2e41d72acdfb87d
http://stackoverflow.com/questio … ios-in-react-native