0

我正在使用 QuickDialog 从 JSON 生成表单,一切都很好,除了日期/时间选择器。不幸的是,文档确实提到了可用的不同类型的日期选择器。示例源还从代码生成表单,但是我想使用 JSON 机制生成它。

这是我的 JSON 的摘录。这仅选择时间选择器:

"elements": [
    {"type":"QDateTimeInlineElement","title":"Date"}, // time only picker
    {"type":"QDateTimeInlineElement","mode":"UIDatePickerModeDate","title":"Date"}, // crashes
    {"type":"QDateTimeElement","title":"Date","date":"01/03/2013"}, // crashes
    {"type":"QDateTimeInlineElement","title":"Date","mode":"1"}, // crashes
    {"type":"QDateTimeInlineElement","title":"Time"} // time only
]
4

2 回答 2

1

事实证明我很接近这种模式。这就是仅在仅使用 json 构建表单时才给我的日期:

{"type":"QDateTimeInlineElement","title":"Date","_mode":"1"}, //works

这是有效的,因为 1 是 UIDatePickerMode 枚举的 UIDatePickerModeDate 值的计算结果。

于 2013-01-20T12:49:10.983 回答
0

如果您查看 QRootBuilder 的实现,则有一个名为“initializeMappings”的方法。此方法具有所有 JSON 等效 iOS 映射。

例如:{"type":"QDateTimeInlineElement","title":"Date","mode":"Date"}

在 initializeMappings 方法中“Date”对应于 UIDatePickerModeDate

于 2013-08-23T00:39:22.123 回答