問題タブ [ekevent]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
2515 参照

ios - イベントを取得する EKEventStore が空のリストを返す

アプリの特定のカレンダーからすべてのイベントを取得したいと考えています。アプリでカレンダーとテスト イベントを作成しました (カスタム カレンダーを作成するには、iOS 5.0以降が必要です)。デバイスでアプリを実行してシステム カレンダー アプリを確認すると、カレンダーと作成したイベントが正しく表示されます。

ここで、このカスタム カレンダーからすべてのイベントをアプリで読み取る必要があります。私のイベントは、startDate と endDate を NOW に設定して作成されます (NSDate は timeInterval を指定せずに割り当てられます)。

ご覧のとおり、結果のイベントが発生する時間間隔を指定しています。ご覧のとおり、終了日は今から 25 年後ですが、開始日は 4 年 (うるう年の場合は 1 日) 後です。この方法で EKEventstore を照会すると、以前に追加されたイベントが取得されます。開始日を 1 つ (または数日または数年) 過去に戻したい場合は、トリッキーな部分が始まります。その後、突然、イベントが返されなくなります。

NSPredicate の NSTimeInterval の負の値に制限はありますか? 文書化された制限は見つかりませんでした。イベントが発生しない理由を検出するのに約 2 時間かかりました (当初は、過去 5 年間と将来 5 年間の範囲が必要でした)。この奇妙な行動の理由は何ですか?何か案が?

/edit on 04/11/2012 開始日が 2012 年 3 月 31 日と 2012 年 4 月 20 日のいくつかのイベントを作成した後、現在からの間隔で決定された日付によるイベントのフェッチは、4 の間隔の長さによって制限されているようです。年。上記のコードで (開始日を 1 日早く設定して) 開始日を調整すると、2012 年 3 月 31 日まではイベントを取得できましたが、それ以降のイベントは取得できませんでした。この調整を削除すると、2012 年 3 月 31 日と 2012 年 4 月 1 日からのイベントが取得されました (ただし、2012 年 4 月 20 日からのイベントは取得されません)。2回目の調整(開始日を20日後に設定)の後、それらの将来のイベントも取得しました.
そのような制限がある理由を特定することはできません。使用された値ストレージのオーバーフローにつながる内部計算がいくつかある可能性があります。推測です。

次に、Appleの例に進みます。一見したところ、Apple の EKEvent プログラミング ガイドに記載されているコードを使用したくありませんでした。私のように小さくてかわいくはありませんでしたが、苦労した後、試してみました。

このようにして、2008 年 4 月 1 日から NOW() + 1 年までのすべてのイベントを取得します。さて、ここでも同じ制限が使用されていることが判明しました:(開始日を調整すると、最後のイベントがその4年間の範囲内になるまで、私のイベントの一部しか取得できませんでした.

集中的な調査により、この動作が非常に長い間存在することが判明しました: EventStore からすべてのイベントを取得する EventKit iOS

0 投票する
1 に答える
228 参照

iphone - iPhone カレンダー イベントをアプリにインポートする方法を教えてください。

iPhone カレンダー イベントをアプリにインポートするためのチュートリアル/ガイドラインを探しています。

誰でも助けることができますか?

ありがとう

0 投票する
0 に答える
821 参照

ios - EKEvent が既に存在するかどうかを確認する iPhone

アプリからカレンダーにイベントを追加しようとしているのですが、何度でも追加できるようです。一度だけ追加したいのですが、イベントが既に存在するかどうかを確認するにはどうすればよいですか? eventIdentifier プロパティを設定しようとしましたが、readOnly のようです。

0 投票する
0 に答える
1820 参照

ios - EKEvent イベントを ical イベントで 1 日に追加する

次のコードを使用して、イベントを iPhone のカレンダーに追加しています。

そして、私が使用するイベントにアクセスするには、

何らかの理由で、iCal によって既にイベントが追加されている日に新しいイベントを追加したい場合、イベントが追加されません。ただし、アプリを介して追加された複数のイベントがある日であっても、イベントは他の日に追加されます。

0 投票する
2 に答える
1101 参照

ekevent - NSKeyedUnarchiver unarchiveObjectWithData 変換の問題

次のコードを使用してに変換NSArray EKEventしていますがNSData、変換されたのNSDataunarchiveObjectWithDatatoNSArrayです。変換中にオブジェクトが変更され、null値が保持されます。

なぜ表示さ れるのNULLですか?(出力を参照してください)。解決策を知っている人は教えてください。前もって感謝します。

私が書いたコード、

出力は

events : ( "EKEvent <0x4ad840> {EKEvent <0x4ad840> {title =カレンダーで確認中 ; calendar = EKCalendar <0x4bf2f0> {title = カレンダー; type = Local; account = (null); allowModify = YES; color = 0.443137 0.101961 0.462745 1.000000}; アラーム = (\n \"EKAlarm <0x4be630> {triggerInterval = -300.000000}\"\n); URL = (null); lastModified = 2012-05-14 12:15:32 +0000}; 場所 = (null); startDate = 2012-05-11 01:30:00 +0000; endDate = 2012-05-19 17:30:00 +0000; allDay = 0; 変動 = 0; 繰り返し = (null); 出席者 = (null)}")

配列: ("EKEvent <0x4c1e60> {EKEvent <0x4c1e60> {title = ( null); カレンダー = (ヌル); アラーム = (ヌル); URL = (ヌル); lastModified = (null)}; 場所 = (ヌル); 開始日 = (null); 終了日 = (null); すべての日 = 0; フローティング = 1; 再発 = (ヌル); 出席者 = (null)}" )

0 投票する
3 に答える
3272 参照

iphone - iOS でイベントに参加者を追加する

EKParticipant クラスのリファレンスでは、「出席者を EKEvent オブジェクトに送信して、EKParticipant オブジェクトの配列を取得します。」はい、どうすれば出席者を EKEvent オブジェクトに送信できますか?

誰かがコード例を教えてくれますか?

0 投票する
1 に答える
1748 参照

ios - iPhoneカレンダーでアプリによって追加されたイベントを追跡する方法

アプリケーションで Web サービスからイベントを取得します。すべてのイベントには一意の識別子があります。

ユーザーがそのイベントをネイティブ カレンダーにプッシュしたい場合は、そのイベントをネイティブに保存しますが、EKEvent オブジェクトの eventIdentifier プロパティを設定できないため、そのイベントがネイティブ カレンダーに既に存在するかどうかを知るにはどうすればよいでしょうか。

EKEvent をサブクラス化し、独自の識別子を追加してみました

しかし、イベントオブジェクトを取得すると、サブクラスオブジェクトを取得できず、呼び出したときに例外がスローされました

ご覧のとおり、EKEvent クラスで eventIdentifier プロパティを設定できず、EKEvent のサブクラス化も機能しません。

必要な機能を実現するにはどうすればよいですか、何か提案はありますか?

0 投票する
1 に答える
2518 参照

ios - ローカルタイムゾーンでのiOS設定ekevent開始時間

私の iOS アプリケーションでは、カレンダーにイベントを保存するために選択したい時刻をユーザーが選択できる日付ピッカーを表示しています。これにはイベントキットを使用しています。
これはうまくいっています。しかし、問題は、GMT タイム ゾーンでも作成されることです。現地時間に従ってカレンダーでイベントを作成するにはどうすればよいですか。

0 投票する
1 に答える
688 参照

iphone - EKAlarm absoluteDate が null です

私のプロジェクトでは、EventKit を使用して iPhone (iOS 5.1.1) のカレンダーにアクセスし、デフォルトのカレンダーからすべてのイベントを取得しています。それはうまくいきます。イベントごとに hasAlarms をチェックし、true の場合、アラームの時刻を知りたいと考えています。したがって、次のようなものです。

問題は、NSLog に "(null)" が表示されることです。私は何が間違っているのか分かりません...

誰でも助けることができますか?よろしくお願いします!