ios - React 基于原生的 DatePicker 出现在 iOS 上最小化
问题描述
我正在将原生库用于在 Android 上运行良好的 DatePicker。但是,当我通过 iPhone 上的 Expo 应用程序运行它时,单击它时它不会打开日历。相反,它会在左下角打开一个小框,然后仅在您单击它时打开日历。
这是单击 DatePicker 时发生的情况:
然后,如果您单击底部的“2021 年 1 月 29 日”框,您将获得日历并且一切都按预期工作:
我不知道它是否相关,但似乎很可疑,焦点发生了一些事情,因为在 Android 上,当您第一次从 DatePicker 打开日历时,您必须按两次日期,就像第一个获得焦点一样回到应用程序,第二个实际上是注册媒体。
下面是生成 DatePicker 的代码:
render() {
return (
<Container style={styles.container}>
<Content padder style={{ padding: 0 }}>
<View style={{ flexDirection: 'row' }}>
<DatePicker
defaultDate={this.state.CheckDate}
minimumDate={new Date(2018, 1, 1)}
maximumDate={new Date(2099, 12, 31)}
chosenDate={this.state.chosenDate}
// locale={"en"}
modalTransparent={true}
animationType={"fade"}
androidMode={"default"}
placeHolderText="Select Date"
textStyle={{ color: "grey" }}
// placeHolderTextStyle={{ color: "#d3d3d3" }}
placeHolderTextStyle={{ fontSize: 20, color: "#999999", textAlignVertical: "bottom" }}
onChange={this.onChangeCheckDate}
disabled={false}
value={this.state.CheckDate}
/>
</View>
</Content>
</Container>
);
}
我正在使用以下版本:
"@react-native-community/datetimepicker": "3.0.4",
"native-base": "^2.15.2",
解决方案
如果您想在 iOS 14 上恢复日期选择器的旧转轮,您需要明确设置它。
display="spinner"
PS 这是截至 2021 年 4 月的最新更改 https://github.com/react-native-datetimepicker/datetimepicker#display-optional
推荐阅读
- python - 将 2d 的 numpy 数组转换为 1d 的 numpy 数组
- android - Flutter Web 设备未显示在 Android Studio 和 VS Code 中
- html - 此时不允许对元素输入进行属性捕获
- java - 在java中将整数数组划分为不同大小的数组
- python - 使用 .format() 格式化字符串化字典
- mysql - Mysql 数据库在 AWS Server Ubuntu 上丢失
- django - 运行 Django 应用程序时如何修复“从守护进程收到的截断或过大的响应标头”?
- r - 使用虚线在 `stat_smooth` 中追踪 `se` 阴影
- css - 引导 4 网格系统,前两列在移动设备上重叠
- mongodb - 聚合中匹配前的mongo排序