0

在我的应用程序中,我目前正在使用两个文本NSDatePicker对象分别指定开始和结束日期。各个value键在我的核心数据存储中具有相应的Date属性。

理想情况下,我想深入了解NSDatePickerNSRangeDateMode. 以编程方式,我可以通过[myDatePicker timeInterval].

这里有一个讨论,关于如何直接使用 Cocoa 绑定是不可能的timeInterval,但是有没有人知道最近的 OSX API 魔法可以实现这一点

(kludge 将类似于 CoreData 存储中的单独NSNumber属性,该属性将在 CD 类别中设置/获取,除了父 NSManagedObject 实体之外,该实体将与主要时间值属性上的设置/获取并行 - 可能通过分开NSNotification。)

4

1 回答 1

1

据我所知,没有简单的方法可以做到这一点。我可能要做的是创建一个 NSDatePicker 的子类,它具有endDateValue您自己合成的可观察属性。应该像 20-30 行代码,棘手的部分将是找到您可以在 NSDatePicker 中子类化的内容,每次发生更改时都会调用它,因此您可以调用:

[self willChangeValueForKey:@“endDateValue”];
[self didChangeValueForKey:@“endDateValue”];

您也无法在 Interface Builder 中轻松地绑定到它。

另一个问题是你想如何在数据库中建模这个范围?你想分开日期吗?还是日期和天数?或者您想将它们混合成字典或自定义对象?无论您选择在数据库级别做什么,您都可以让您的 NSDatePicker 子类返回并接受它,因此它会直接与数据库对话(一旦连接到代码中)。

于 2014-01-16T09:24:45.570 回答