2013-01-20 33 views
0

我使用QuickDialog從JSON生成表單,除日期/時間選擇器外,一切正常。不幸的是,文檔確實提到了可用的不同類型的日期選擇器。示例源也從代碼生成表單,但是我想使用JSON機制生成它。如何使用json設置QDateTimeElement的模式?

這是我的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 
] 

回答

1

原來我很接近模式。這是結束了給我,只有當形式只使用JSON建成日期:

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

這工作,因爲1是什麼UIDatePickerMode枚舉的UIDatePickerModeDate值計算結果爲。

0

如果你看看QRootBuilder的實現,有一種叫做「initializeMappings」的方法。此方法具有所有JSON等效的iOS映射。

例如: { 「類型」: 「QDateTimeInlineElement」, 「標題」: 「日期」, 「模式」: 「日期」}

內initializeMappings方法 「日期」 對應於UIDatePickerModeDate

相關問題