你能绑定到NSDatePicker的timeInterval属性吗?

时间:2008-12-10 09:12:45

标签: objective-c cocoa core-data osx-leopard

我有一个具有Event类的Core Data应用程序,它具有开始日期和结束日期。将这些绑定到一对NSDatePicker小部件是微不足道的,但我想让它与Leopard中提供的NSRangeDateMode一起使用。

NSDatePicker有一对处理timeInterval的方法,但我似乎无法绑定到它。

更新:我使用了手动调用来进行绑定,它的一半有效:

[picker bind:@"timeInterval" 
    toObject:array 
 withKeyPath:@"selection.timeInterval" 
     options:options];

当基础对象发生更改时,它在NSDatePicker中设置timeInterval,但在更改NSDatePicker的timeInterval时不设置基础对象。

3 个答案:

答案 0 :(得分:1)

间隔支持仅在您使用日期选择器的图形版本时可用。即使这样,timeInterval也没有本机绑定支持。

另外,根据您打算如何使用此UI,我选择用户来选择超出当月的范围。

答案 1 :(得分:1)

可悲的是,没有。日期选择器的timeInterval属性甚至不能正确显示键值。基本上,您要么设置一个操作方法,要么使用委托验证方法来接收其值的更新。此外,您需要将其四舍五入到最接近的86400.0的倍数(即一天中的秒数),因为日期选择器在其报告的timeInterval中始终关闭了几分之一秒。也许在Snow Leopard翻滚的时候,这个功能将被完全烘焙。

答案 2 :(得分:0)

1169097解释了如何实现自定义绑定。