1

開始日と終了日を持つEventクラスを持つCoreDataアプリケーションがあります。これらをNSDatePickerウィジェットのペアにバインドするのは簡単ですが、Leopardで使用可能なNSRangeDateModeで機能するようにしたかったのです。

NSDatePickerには、timeIntervalを処理する2つのメソッドがありますが、これにバインドできないようです。

更新:手動呼び出しを使用してバインディングを実行しましたが、半分は機能します:

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

基になるオブジェクトが変更されたときにNSDatePickerにtimeIntervalを設定しますが、NSDatePickerのtimeIntervalが変更されたときに基になるオブジェクトを設定しません。

4

3 に答える 3

1

間隔のサポートは、日付ピッカーのグラフィカル バージョンを使用している場合にのみ使用できます。それでも、ネイティブ バインディングのサポートはありませんtimeInterval

また、これをどのように使用するかにもよりますが、私の意見では、当月を超えて範囲を選択するための UI は貧弱です。

于 2008-12-10T21:57:22.663 に答える
1

悲しいことに、いいえ。日付ピッカーの timeInterval プロパティは、適切にキー値を観察することさえできません。基本的に、アクション メソッドを設定するか、デリゲート検証メソッドを使用してその値の更新を受け取るかのいずれかで行き詰まっています。また、日付ピッカーは報告された timeInterval で一貫して数分の 1 秒単位でオフになっているため、最も近い 86400.0 の倍数 (つまり、1 日の秒数) に丸める必要があります。おそらく、Snow Leopard が登場する頃には、この機能は完全に完成しているでしょう。

于 2008-12-10T22:05:42.647 に答える