android - TDateEdit,如何在日历选择器对话框中将前一年设置为 1900?

标签 android delphi view calendar firemonkey

我在 android 中的应用程序(在 Delphi XE8 Firemonkey 中开发)需要搜索 1900 年之前的数据,我使用 TDateEditor,当用户单击以选择日期时,android 日历选择器对话框不允许日期小于1900 年,我阅读了有关 styles.xml 和测试但未成功的信息,代码如下;

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="DateEditStyle" parent="android:style/Widget.CalendarView">
            <item name="android:endYear">2100</item>
            <item name="android:startYear">1800</item>
    </style>
</resources>

并将styles.xml部署在远程路径“res\values\”中。什么都不起作用,我该如何解决?我做错了什么?

非常感谢您的帮助

最佳答案

我想问题在于包含数据的类型(或 TDateEdit 处理它的方式)。作为 Embarcadero says :

TDate represents a special type of TDateTime value that has no decimal part. A TDate value represents the number of days that have elapsed since 12/30/1899.

我想这就是为什么您不能使用标准组件来选择此类日期的原因。看来您需要声明自己的 TDate 类型和/或开发具有必要功能的组件(例如能够处理负值)。

关于android - TDateEdit,如何在日历选择器对话框中将前一年设置为 1900?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34443273/

相关文章:

delphi - 同步通用 TList 和 TListBox 时出现问题

java - MVC 和 JFrame

ruby-on-rails - 如何从按钮或链接单击的 View 调用 Rails 方法

android - 使用 react-native-firebase 启用 Proguard

android - 如何使用信号量进行正确的 android ble 通信?

从文件发送短信的Android应用程序?

android 系统尝试绘制大尺寸位图(崩溃报告)

android - 搜索 View 图标位置更改

delphi - FastReport - 如何将特定的组页脚值求和到新的页脚区域

delphi - InnoSetup 相当于 "overwrite destination if it hasn' t 自上次安装以来发生了变化”?