問題タブ [apple-watch-complication]

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 投票する
1 に答える
313 参照

swift - watchOS - コンプリケーションは前のエントリを表示します

公共交通機関の出発時刻を表示する watchOS 3 のコンプリケーションを作成しています。(String) と(NSDate)Trainを持つオブジェクトを含む配列を持つデータ モデルを作成しました。stationNamedepartureTime

getCurrentTimelineEntry() メソッドを実装しましたが、エントリがウォッチに表示されています。問題は、時計が前のエントリしか表示しないことです。たとえば、次の出発時刻があります。

現在の時刻が 14:10 の場合、最初のエントリ (時刻は 14:00) がまだ時計に表示されています。現在時刻が 14:30 になるまで、そのエントリが表示されています。現在の時刻が 14:10 の場合、時計で 14:30 の出発時刻を確認したいと思います。

誰かがこれを手伝ったり、正しい方向に向けたりできますか?

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

swift - Swift 3 とバックグラウンド タスクによる複雑さの更新

watchOS 3 の場合、Apple はWKRefreshBackgroundTaskgetNextRequestedUpdateDate.

新しいアプローチを使用して、2 つの更新の間の時間をどのように判断できますか?

私は(URLから)要求しているデータをハックしgetCurrentTimelineEntryて複雑さを更新するだけですが、それはAppleが推奨するものではないと思います.

短いコード例は大きな助けになります。

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

watchkit - reloadTimeline() は合併症を更新しません

watchOS 3 アプリを作成しようとしていますが、バックグラウンド タスクでコンプリケーションを更新したいと考えています。

まず、 内のバックグラウンド タスクでサーバーから新しいデータを取得しますhandle()。その後、 を呼び出してアクティブな合併症を更新しcomplicationServer.reloadTimeline(for:)ます。

コンソールに「UPDATE COMPLICATION」というメッセージが表示されるので、コードが実行されます。

しかし、リロード後も、コンプリケーションはまだ古いデータを表示します。ウォッチフェイスを切り替えて元に戻すと、コンプリケーションがリロードされることがあります。バックグラウンド タスクからコンプリケーションをリロードするために何か他のことをする必要がありますか?

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

ios - getPlaceholderTemplateForComplication() メソッドはいつ呼び出されますか?

WatchOS アプリ用の単純な複雑なテンプレートを作成しようとしていますが、ComplicationControllerクラスのメソッドgetPlaceholderTemplateForComplication()がいつ呼び出されるかを理解しようとしています。

Appleのドキュメントによると

アプリが最初に起動されると、ClockKit はこのメソッドを呼び出します。

しかし、シミュレーターを実行すると、ほとんどの場合、起動しません。

「Apple Watch にアプリを表示」スイッチをオフにしてからオンに戻しても問題は解決しません。

getPlaceholderTemplateForComplication()メソッドはいつ呼び出されますか?